Uswahshop Feed

Jumat, 25 Desember 2009 - 10:23:06 WIB
Reference dan Objek Cloning
Diposting oleh : Administrator
Kategori: PHP - Dibaca: 19 kali


Reference ke suatu variabel adalah nama alias terhadap variabel tersebut, hal ini berbeda sekali dengan pointer. Dengan demikian, jika sudah digunakan untuk mengacu pada suatu objek atau variabel, maka reference tidak dapat di-reset untuk mengacu ke objek atau variabel lainnya. Fasilitas ini dapat dimanfaatkan untuk memberikan alias terhadap suatu variabel yang mempunyai nama panjang, misalnya karena berada dalam struktur yang berlapis.
Contoh berikut akan menunjukkan bagaimana cara sederhana me-refer variabel sekaligus memeriksa hasil reference.

<?php 

/* reference.php */
class MyReference {
}
$a = new MyReference;
$b = $a;
if ($a === $b) {
echo "$a dan $b me-refer pada objek yang sama";
} else {
echo "$a dan $b TIDAK me-refer pada objek yang sama";
}

$c = new MyReference;
$d = new MyReference;
if ($c === $d) {
echo "$c dan $d me-refer pada objek yang sama";
} else {
echo "$c dan $d TIDAK me-refer pada objek yang sama";
}
?>

Perhatikan bahwa objek $b me-refer atau mengacu pada objek $a, sehingga $b sama dengan $a dan dalam satu objek yang sama.
Berikutnya kita membuat objek baru bernama $c dan $d. Meskipun terlihat bahwa kedua objek adalah sama, akan tetapi sebenarnya tidak mengacu pada objek satu. Bisa jadi objek $c dan $d ditempatkan pada lokasi berbeda, meskipun isinya sama akan tetapi bukan merupakan objek yang sama.
Fitur baru pada PHP 5 juga memungkinkan Anda untuk melakukan cloning terhadap objek. Ini sama halnya ketika kita melakukan reference objek, sehingga objek yang di-clone akan mengacu pada objek yang sama.

<?php 

/* clone.php */
class MyClone {
function __clone() {
echo "Objek di cloning
";
}
}
$a = new MyClone;
$b = clone $a;
if ($a == $b) {
echo "$a dan $b me-refer pada objek yang sama";
} else {
echo "$a dan $b TIDAK me-refer pada objek yang sama";
}
?>


Bookmark & Share  ADD TO DEL.ICIO.US ADD TO DIGG ADD TO FURL ADD TO NETSCAPE ADD TO REDDIT ADD TO STUMBLEUPON ADD TO TECHNORATI FAVORITES ADD TO SQUIDOO ADD TO WINDOWS LIVE ADD TO YAHOO MYWEB ADD TO GOOGLE

0 Komentar :


Isi Komentar :
Nama :
Website :
Pilih emotions :
Komentar :
 
Security Code :

 

 




  

Protected
Sertakan sumbernya jika copy paste

Valid
[Valid
click for a free hit counter
Hit the Hit web page.