日期:2014-05-16  浏览次数:20465 次

array_key_exists( )函数使用问题
$res数组,使用print_r($res);语句输出后为:
Array ( [0] => Array ( [tagname] => KF_FIC01341.TOTALIZERA_2.PV [units] => KNm3 [value] => 0 ) [1] => Array ( [tagname] => KF_FIC01342.TOTALIZERA_4.PV [units] => KNm3 [value] => 0 ) ) 
在使用array_key_exists("value",$res);语句时,返回false。我仔细查看知道原因了,$res数组是多维数组,键名有两个:0、1,不存在value,所以返回了false。
那该如何判断$res数组,有value键啊?就是多维数组咋写代码?
------解决方案--------------------
array_key_exists("value",$res[0])
------解决方案--------------------
$arr = Array ('0' => Array ( 'tagname' => 'KF_FIC01341.TOTALIZERA_2.PV','units' => 'KNm3', 'value' => 0 ) ,'1' => Array ( 'tagname' => 'KF_FIC01342.TOTALIZERA_4.PV', 'units' => 'KNm3' ,'value' => 0 ));

function  check_index ( $item ,  $key )
{
    if(array_key_exists("value",$item)){
     echo "存在此键值"."<br />";
    }else{
     echo "没有此键值"."<br />";
    }
}
array_walk ( $arr ,  'check_index' );