需求:有一个数组存储着信息如下
array(
array(
"name"=>"name1"
"tel"=>"tel1")
array(
"name"=>"name2"
"tel"=>"tel2"
这时候我们只想要拿到tel 的值。怎么办呢?我们很容易的想到利用递归遍历多维数组,然后判断$key的值然后输出,代码如下:
function isarr($arr){
foreach($arr as $key=>$val){
if(is_array($val)){
isarr($val);
}else{
if($val=$arr['tel']){
echo $arr['tel'];
}
}
}
}
运行后你会发现,其实$val=$arr['tel']的值永远都是true,所以判断无效。
正确的写法应该是直接把$key 的值传入数组。代码如下
function isarr($arr){
foreach($arr as $key=>$val){
echo $arr[$key]['date'];
}
}