您好,登錄后才能下訂單哦!
PHP對象數組和一般數組有什么區別?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
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 = 'qqyumidi'; } foreach($arr as $el){ echo $el->name; echo "<br/>"; } // 結果:qqyumidi qqyumidi
關于PHP對象數組和一般數組有什么區別問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。