Ben aşağıdaki kodu vardır:
$data['x'] = $this->x->getResults();
$data['y'] = $data['x'];
//some code here to modify $data['y']
//this causes (undesirably) $data['x] to be modified as well
I ['y'] $ verileri değiştirerek, $ veri tüm unsurları başvuruları kendilerini olduğundan sanırım ayrıca $ verileri değiştirir ['x'] .. ne istediğiniz değil ki. Ben aynı kalması $ veri ['x'] istiyorum. Ben değerine göre öğeleri kopyalamak böylece burada elemanları KQUEUE için herhangi bir yolu var mı?
Teşekkürler.
Güncelleme: $ this-> x-> getResults (); bir nesne dizisi döndürür. Ben o zaman gibi bir şey yapabilirsiniz: $ veri ['x'] [0] -> date_create ...
Update: my latest attempt to clone the array looks something like this:
$data['x'] = $this->x->getResults();
$data['y'] = $data['y'];
foreach($data['x'] as $key=>$row) {
$data['y'][$key]->some_attr = clone $row->some_attr;
}
Ben kapalı bir şekilde buradayım? Ben hata bir "non-nesne çağırdı __clone yöntemi" elde tutmak. Benim en iyi seçenek, her öğe üzerinde yineleme ve onu klonlamak gibi yanıtları okuma görünüyor (ben bu kod ile yapmaya çalışıyor ne olduğu ..).
UPDATE: Just münhal: foreach döngü içinde ben sadece hattını değiştirmek için gereken:
$data['y'][$key] = clone $row;
Ve bu işe yarıyor! Yardım için herkese teşekkürler.