您好,欢迎访问一九零五行业门户网

关于递归的问题

function getarr($arr='') { for ($i = 0; $i 1 [2] => 2 [3] => 3 [4] => 4 [5] => 5 [6] => 6 [7] => 7 [8] => 8 [9] => 9)
echo (count($arr)), |
; 上面这里为什么输出2个2?
回复讨论(解决方案) 这样应该看得清楚些 function getarr($arr='') { printf(传入 %s 大小 %d, print_r($arr, 1), count($arr)); for ($i = 0; $i 0 [1] => 0 ) 大小 2 赋值后 2传入 array ( [0] => 0 [1] => 1 ) 大小 2

由于参数不是传引用,也没有承接递归的返回
所以递归只是干扰视线
这样应该看得清楚些 function getarr($arr='') { printf(传入 %s 大小 %d, print_r($arr, 1), count($arr)); for ($i = 0; $i 0 [1] => 0 ) 大小 2 赋值后 2传入 array ( [0] => 0 [1] => 1 ) 大小 2

由于参数不是传引用,也没有承接递归的返回
所以递归只是干扰视线
非常感谢。
其它类似信息

推荐信息