PHP对象数组和一般数组有什么区别
PHP对象数组和一般数组有什么区别?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
成都创新互联公司主要从事成都网站设计、网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务青州,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
PHP中的foreach作为经常用到的函数,常常用来遍历数组,对于数组中的元素是值的情形(如一般常见型的数组),foreach只是将数组中的每份元素的值拷贝到each后面的变量,也就是对值本身的拷贝,对其值进行改变并不会影响到数组本身。
如:
$arr = array(1, 2, 3); foreach($aa as $el){ $el =+ 100; } foreach($arr as $el){ echo $el; echo "
"; } // 结果:1 2 3
但是如果是对象数组的情形,也就是数组元素均为对象时,此时each后面的变量是对对象引用的拷贝,对其进行的改变会直接影响到原数组本身。这点与上面情形很容易弄混。
如:
$aa = new stdClass(); $aa->name = '张三'; $bb = new stdClass(); $bb->name = '李四'; $arr = array($aa, $bb); foreach($arr as $element){ $element->name = 'qqyumidi'; } foreach($arr as $el){ echo $el->name; echo "
"; } // 结果:qqyumidi qqyumidi
关于PHP对象数组和一般数组有什么区别问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。
网站名称:PHP对象数组和一般数组有什么区别
文章出自:http://pwwzsj.com/article/piecec.html