9 EKİM 2008, PERŞEMBE
Nasıl PHP bir nesnenin bir kopyasını oluştururum?
PHP nesne başvurusu tarafından geçirilen gibi görünüyor. Hatta atama operatörleri Nesnenin bir kopyasını oluşturmak için görünmüyor.
Burada basit, yapmacık bir kanıt
<?php
class A {
public $b;
}
function set_b($obj) { $obj->b = "after"; }
$a = new A();
$a->b = "before";
$c = $a; //i would especially expect this to create a copy.
set_b($a);
print $a->b; //i would expect this to show 'before'
print $c->b; //i would ESPECIALLY expect this to show 'before'
?>
Her iki durumda da baskı alıyorum '' . sonra
Nasıl geçtim mi yanibir dolariçin*set_b()*referans değer, değil mi?
CEVAP
9 EKİM 2008, PERŞEMBE
PHP 5 nesnelerine başvuru tarafından geçirilir. PHP 4 değerini (çalışma zamanı kaldırılmış oldu referans, geçmek zorunda yüzden) tarafından geçirilir.
'Klon' nesneleri kopyalamak için PHP5: operatörünü kullanabilirsiniz
$objectB = clone $objectA;
Ayrıca, sadece söz konusu başvuru, söylediğin gibi her şey değil tarafından geçirilen nesneler
Bunu Paylaş:
Nasıl Python ile bir nesnenin bir kopy...
Nasıl bir nesnenin adını'JavaScri...
Nasıl Android köşeleri yuvarlatılmış b...
Nasıl verileri kopyalamadan Oracle bir...
Nasıl eğer bir nesnenin null olup olma...