Maison > développement back-end > tutoriel php > php数组递归输出,该怎么解决

php数组递归输出,该怎么解决

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Libérer: 2016-06-13 11:12:06
original
1094 Les gens l'ont consulté

php数组递归输出

本帖最后由 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'));

想通过递归,输入以下字符串



name3-age3

name2-age2

name1-age1

$ar = array('0'=>array('name'=>'name1','age'=>'age1'),'1'=>array('name'=>'name2','age'=>'age2'),'2'=>array('name'=>'name3','age'=>'age3'));<br />deep_child($ar);<br />function deep_child($ar = array()){<br />	static $str = '';<br />	static $i=0;<br />	<br />	if($ar[$i]){<br />		echo '<div id="a">';<br />		$s =  $ar[$i]['name']."-".$ar[$i]['age'];<br />		$i++;<br />		deep_child($ar);<br />		echo $s;<br />		echo '</div>';<br />	<br />	}<br />}
Copier après la connexion


这样写好象能输入,不知道有没其他写法。。


------解决方案--------------------
静态变量可不是随便可用的
$ar[0] = array('0'=>array('name'=>'name1','age'=>'age1'),'1'=>array('name'=>'name2','age'=>'age2'),'2'=>array('name'=>'name3','age'=>'age3'));<br />$ar[1] = array('0'=>array('name'=>'name1','age'=>'age1'),'1'=>array('name'=>'name2','age'=>'age2'),'2'=>array('name'=>'name3','age'=>'age3'));<br />for($i=0;$i<2;$i++){<br />    echo deep_child($ar[$i]);<br />     <br />}<br />function deep_child($ar = array(), $i=0){<br />    $str = '';<br />//    static $i=0;<br />     <br />    if(isset($ar[$i])){<br />        $str.= '<div id="a">'.PHP_EOL;<br />        $str.=  $ar[$i]['name']."-".$ar[$i]['age'].PHP_EOL;<br />        $i++;<br />        $str.=deep_child($ar, $i);<br />         <br />        $str.= '</div>'.PHP_EOL;<br />     <br />    }<br />    return $str;<br />}
Copier après la connexion

name1-age1

name2-age2

name3-age3




name1-age1

name2-age2

name3-age3



Étiquettes associées:
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal