递归函数:自己调用自己
使用引用获得递归结果:
function showColors($colors,&$colorStr)
{
if(count($colors)==0)return false;
$color = array_pop($colors);
$colorStr .= showColors($colors,$colorStr);
return " color:".$color;
}
$colors = ['red','blue','purple','green','yellow'];
$colorStr = "";
showColors($colors,$colorStr);
echo $colorStr;
使用静态变量实现递归
function showColors($colors)
{
static $colorStr = '';
if (count($colors) == 0)
return false;
$colorStr .= " color:".array_pop($colors);
showColors($colors);
return $colorStr;
}
$colors = ['red', 'blue', 'purple', 'green', 'yellow'];
echo showColors($colors);
//color:yellow color:green color:purple color:blue color:red
function test(){
static $i=0;
if($i++<10){
echo $i;
test();
}
}
test();//12345678910