php5中的物件模型通過引用來呼叫物件, 但有時你可能想建立乙個物件的副本,並希望原來的物件的改變不影響到副本 . 為了這樣的目的,php定義了乙個特殊的方法,稱為__clone. 像__construct和__destruct一樣,前面有兩個下劃線.
預設地,www.cppcns.com用__clone方法將建立乙個與原物件擁有相同屬性和方法的物件. 如果你想在轉殖時改變預設的內容,你要在__clone中覆寫(屬性或方法).
轉殖的方法可以沒有引數,但它同時包含this和that指標(that指向被複製的物件). 如果你選擇轉殖自己,你要小心複製任何你要你的物件包含的資訊,從that到this. 如果你用__clone來複製. php不會執行任何隱性的複製,
下面顯示了乙個用系列序數來自動化物件的例子:
<?php
class objecttracker file://物件***
function __clone() file://轉殖
function getid() file://獲取id屬性的值
function getname() file://獲取name屬性的值 }
$ot = new objecttracker("zeev's object");
$ot2 = $ot->__clone();
//輸出: 1 zeev's object
print($ot->getid() . " " . $ot->g程式設計客棧etname() . "
");
//輸出: 2 clone of zeev's object
p程式設計客棧rint($ot2->getid() . " " . $ot2->getname() . "
");
?>
本文標題: 第五節 轉殖 [5]
本文位址:
函式第五節
coding utf 8 1.定義乙個func name 該函式效果如下。assert func lilei lilei assert func hanmeimei hanmeimei assert func hanmeimei hanmeimei def title name if isinsta...
第五節 字典
字典的表現形式為大括號 dict key必須可hash,必須唯一且必須為不可改變的資料型別 value可存放任意多個值,可修改,可不唯一 無序且查詢速度快 鍵 值 鍵值對 1 dic.keys 返回乙個包含字典所有key的列表 2 dic.values 返回乙個包含字典所有value的列表 3 di...
第五節 列表(list)
lpush listname value lpush 命令將乙個或多個值插入到列表頭部。lpush newlist valuea valueb lindex listname index 佇列從做往右,索引從0開始。隊頭在左邊,新插入的元素就是索引為0的元素。你也可以使用負數下標,以 1 表示列表的...