首页 > 代码库 > PHP中foreach详细分析—一般数组与对象数组
PHP中foreach详细分析—一般数组与对象数组
PHP中的foreach作为经常用到的函数,常常用来遍历数组,对于数组中的元素是值的情形(如一般常见型的数组),foreach只是将数组中的每份元素的值拷贝到each后面的变量,
也就是对值本身的拷贝,对其值进行改变并不会影响到数组本身。
如:
$arr = array(1, 2, 3);foreach($aa as $el){ $el =+ 100;} foreach($arr as $el){ echo $el; echo "<br/>"; } // 结果:1 2 3
但是如果是对象数组的情形,也就是数组元素均为对象时,此时each后面的变量是对对象引用的拷贝,对其进行的改变会直接影响到原数组本身。这点与上面情形很容易弄混。
如:
$aa = new stdClass();$aa->name = ‘张三‘;$bb = new stdClass();$bb->name = ‘李四‘;$arr = array($aa, $bb);foreach($arr as $element){ $element->name = ‘mrxia‘;}foreach($arr as $el){ echo $el->name; echo "<br/>";} // 结果:mrxia mrxia
PHP中foreach详细分析—一般数组与对象数组
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。