日期:2014-05-17  浏览次数:20525 次

foreach多层嵌套的问题,求解~!

<?php
$a1=explode(',','20,21');
$b1=explode(',','20,21');
$c1=explode(',','20,21');
$d1=explode(',','20,21');
$e1=explode(',','20,21');
foreach($a1 as $a ){

foreach($b1 as $b){

foreach($c1 as $c){

foreach($d1 as $d){ 

foreach($e1 as $e){ 

}

}

}


}

}
?>



页面报错内容:
渲染失败,具体错误:loop nest level reach limited!

请问,
出现这个错误,是PHP本身的限制,
还是什么?
如果我一定要嵌套这么多层,
有没有什么好的解决办法呢?

谢谢,给点建议哈~!

------解决方案--------------------
你嵌套的目的是因为$a1是一个多维数数组,$b1是$a1的子数组,$c1是$b1的子数组。
楼主给的例子并不合适,你的例子相当于$a1,$b1,$c1彼此是相互独立的一维数组,因此
像你那样遍历当然出不来结果了。
按照你的例子要想出结果只能是

foreach($a1 as $a ){
echo $a;
}
foreach($b1 as $b ){
echo $b;
}

$a1和$b1彼此相互独立,根本不存在任何关系