原因:$res这个变量最后的结果是一个空的集合,无法执行循环,当然没有结果输出了。
三穗网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。创新互联自2013年创立以来到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联。
解决方案:去掉$res=array()这一行,然后再循环输出$value[“id”]。
?php
$cliest = Array (
'0' = Array ( 'cid' = 1 ,'pid' = 3 ,'name' = '分类6', 'displayorder' = 3 ,'docs' = 18 ),
'1' = Array ( 'cid' = 2 ,'pid' = 2 ,'name' = '分类2', 'displayorder' = 4 ,'docs' = 18 ) ,
'2' = Array ( 'cid' = 3 ,'pid' = 3 ,'name' = '分类3', 'displayorder' = 5 ,'docs' = 18 )
);
$dliest = Array (
'0' = Array ( 'cid' = 1 ,'pid' = 1 ,'name' = '分类8', 'displayorder' = 1 ,'docs' = 18 ),
'1' = Array ( 'cid' = 2 ,'pid' = 3 ,'name' = '分类4', 'displayorder' = 2 ,'docs' = 18 ),
'2' = Array ( 'cid' = 3 ,'pid' = 3 ,'name' = '分类1', 'displayorder' = 2 ,'docs' = 18 )
);
$result= array_merge($cliest,$dliest);
foreach($result as $key=$value){
if($value['pid']==3){
$data[] = $value;
}
}
print_r($data);
?
刚搞好,我这个比一楼好啊
?php//你的数组语法不对,我修改了一下,递归调用traversalMap()函数就能遍历各值
$b=array (
'C00000013' =
array (
'id' = 'C00000013',
'name' = '醇香鲜米' ,
'price' = '6.85',
'num' = 70,
'img' = '5kg'),
'C00000016' =
array (
'id' = 'C00000016',
'name' = '典香鲜米',
'price' = '8.75' ,
'num' = '2' ,
'img' = '10kg'),
'C00000018' =
array (
'id' ='C00000018',
'name' = '鲜米卡',
'price' = '92',
'num' = 3,
'img' = '典香'));
function traversalMap($arr)
{
foreach($arr as $k=$v)
{
if(!is_array($v))
echo $k."=".$v."BR";
else
echo $k."br";
if(is_array($v))
traversalMap($v);
}
}
traversalMap($b);
?