关于“php中each”的问题,小编就整理了【3】个相关介绍“php中each”的解答:
php怎么反向遍历一个数组?把他倒序一次 foreach(array_reverse($a) as $i=>$v){ echo $v; }
php如何判断多维数组中是否存在字符串?foreach($arr as $val){ foreach($val as $vvv){ if(is_string($vvv)){ echo $vvv; } }}使用递归不得了吗?对数据做递归处理,是字符串的,读取,是数组的继续遍历
PHP中的&传值引用的问题,在foreach循环的结果能帮解释下输出的结果原理是什么?HP中的&传值引用的问题,在foreach循环的结果能帮解释下输出的结果原理是什么?
代码如下:
$arr = array('one','two','three');
foreach ($arr as &$value){ echo 'Value:'.$value.'
'; }
foreach ($arr as $value){ echo 'Value:'.$value.'
'; }
?>
输出结果:
Value:one
Value:two
Value:three
Value:one
Value:two
Value:two
第一次带&的foreach并没有改变数组的内容。。
而是较后一次循环$value引用了数组的较后一个项 (可以测试一下,在第一次循环结束后unset($value),第二次循环的结果就不会有变化),
在你第二个foreach也是使用的$value变量,这才造成了怪异的问题(可以换个变量,比如$val,输出的数组就不会有变化)。
第二个foreach是赋值给$value,但是这时的$value是引用的数组的较后一个值,
所以
第一次循环把one赋值给了较后一个值,
到此,以上就是小编对于“php中each”的问题就介绍到这了,希望介绍关于“php中each”的【3】点解答对大家有用。