PHP對(duì)象數(shù)組和一般數(shù)組有什么區(qū)別?針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡(jiǎn)單易行的方法。
成都創(chuàng)新互聯(lián)是一家專業(yè)從事做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)的品牌網(wǎng)絡(luò)公司。如今是成都地區(qū)具影響力的網(wǎng)站設(shè)計(jì)公司,作為專業(yè)的成都網(wǎng)站建設(shè)公司,成都創(chuàng)新互聯(lián)依托強(qiáng)大的技術(shù)實(shí)力、以及多年的網(wǎng)站運(yùn)營經(jīng)驗(yàn),為您提供專業(yè)的成都網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)及網(wǎng)站設(shè)計(jì)開發(fā)服務(wù)!PHP中的foreach作為經(jīng)常用到的函數(shù),常常用來遍歷數(shù)組,對(duì)于數(shù)組中的元素是值的情形(如一般常見型的數(shù)組),foreach只是將數(shù)組中的每份元素的值拷貝到each后面的變量,也就是對(duì)值本身的拷貝,對(duì)其值進(jìn)行改變并不會(huì)影響到數(shù)組本身。
如:
$arr = array(1, 2, 3); foreach($aa as $el){ $el =+ 100; } foreach($arr as $el){ echo $el; echo "
"; } // 結(jié)果:1 2 3
但是如果是對(duì)象數(shù)組的情形,也就是數(shù)組元素均為對(duì)象時(shí),此時(shí)each后面的變量是對(duì)對(duì)象引用的拷貝,對(duì)其進(jìn)行的改變會(huì)直接影響到原數(shù)組本身。這點(diǎn)與上面情形很容易弄混。
如:
$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 "
"; } // 結(jié)果:qqyumidi qqyumidi
關(guān)于PHP對(duì)象數(shù)組和一般數(shù)組有什么區(qū)別問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識(shí)。