您好我想找到下面的数组中的最长的字符串:PHP递归问题
$niza = array(array(5, 1.15 , 15),
array('unknown', 0.75 , 5, array(2, 'bla', 1.15)),
array(array('text'), 1.15 , 7)
我使用下面的函数,但我没有得到期望的结果,的$len
值保持不变。你可以帮我吗?
function getLongest($array){
$longest="";
$len=0;
function arrWalk($item){
global $len;
global $longest;
if(is_string($item)) {
echo $len . "<br>";
if (strlen($item) > $len) {
$longest = $item;
$len = strlen($item);
}
}
}
array_walk_recursive($array,'arrWalk');
echo $len;
}
arrWalk($niza);
我想' array_reduce()'会更合适 – phaberest
我认为'getLongest($ arr)'永远不会被调用。 – MH2K9