本帖最后由 ecshop528 于 2013-01-21 12:54:22 编辑 $ar = array('0'=>array('name'=>'name1','age'=>'age1'),'1'=>array('name'=>'name2','age'=>'age2'),'2'=>array('name'=>'name3','age'=>'age3'));
想通过递归,输入以下字符串
$ar = array('0'=>array('name'=>'name1','age'=>'age1'),'1'=>array('name'=>'name2','age'=>'age2'),'2'=>array('name'=>'name3','age'=>'age3'));
deep_child($ar);
function deep_child($ar = array()){
static $str = '';
static $i=0;
if($ar[$i]){
echo '';
$s = $ar[$i]['name']."-".$ar[$i]['age'];
$i++;
deep_child($ar);
echo $s;
echo '
';
}
}
这样写好象能输入,不知道有没其他写法。。
------解决方案--------------------静态变量可不是随便可用的
$ar[0] = array('0'=>array('name'=>'name1','age'=>'age1'),'1'=>array('name'=>'name2','age'=>'age2'),'2'=>array('name'=>'name3','age'=>'age3'));
$ar[1] = array('0'=>array('name'=>'name1','age'=>'age1'),'1'=>array('name'=>'name2','age'=>'age2'),'2'=>array('name'=>'name3','age'=>'age3'));
for($i=0;$i echo deep_child($ar[$i]);
}
function deep_child($ar = array(), $i=0){
$str = '';
// static $i=0;
if(isset($ar[$i])){
$str.= ''.PHP_EOL;
$str.= $ar[$i]['name']."-".$ar[$i]['age'].PHP_EOL;
$i++;
$str.=deep_child($ar, $i);
$str.= '
'.PHP_EOL;
}
return $str;
}
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
相关文章
相关视频
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论