我有一個循環,我正在存儲一個已更新到數組中的下一個位置的對象。 PHP正在存儲對該對象的引用,而不是將該對象存儲在數組中。所以,在循環結束時,我的數組包含許多對最新版本對象的引用,它們都包含相同的信息。如何在循環的每次迭代中存儲對象的實例?如何在數組中存儲對象,而不是對PHP中的對象的引用?
while($Row = $Query->fetch_object()) {
$Company->id = $Row->id;
$Company->json = json_decode($Row->json);
$companies[] = $Company;
}
嘗試使用array_push和after循環返回它嗎? –
'克隆'的作品。爲什麼是這樣?我無法相信我從未遇到過這個問題。當我直接將$ Row從數據庫中存儲到一個數組時,它不存儲對$ Row的引用,它存儲該對象。 WTF? –
你指的是什麼確切的*問題* PHP多年來一直這樣工作,並且有許多關於這種行爲的文章以及它爲什麼在那裏。如果它按照你認爲的方式工作,那麼我們的手中就會缺乏記憶。 –