小編給大家分享一下php中如何實(shí)現(xiàn)克隆,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
創(chuàng)新互聯(lián)于2013年創(chuàng)立,先為呼和浩特等服務(wù)建站,呼和浩特等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為呼和浩特企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
定義:克隆對(duì)象clone
,即通過已有的對(duì)象復(fù)制一個(gè)新的同樣的對(duì)象,但是兩者之間并非同一個(gè)對(duì)象。
1.對(duì)象克隆是通過clone關(guān)鍵字實(shí)現(xiàn),即:clone
對(duì)象
;
count = 1; //克隆 $s2 = clone $s1; ?>
2.克隆出來(lái)的對(duì)象與原來(lái)對(duì)象是兩個(gè)內(nèi)存地址,因此是兩個(gè)不同的對(duì)象
count = 2; echo $s1->count; //1,沒有變化 ?>
3. 對(duì)象在實(shí)例化的時(shí)候會(huì)自動(dòng)調(diào)用存在的構(gòu)造方法__construct()
,同樣的,在類的內(nèi)部,PHP允許定義一個(gè)__clone()
的方法,在對(duì)象被克隆后,新克隆出來(lái)的對(duì)象會(huì)自動(dòng)調(diào)用
count++; } } //實(shí)例化 $s1 = new Saler(); $s1->count = 1; //克隆 $s2 = clone $s1; ?>
4.如果不允許對(duì)象被克隆,可以將__clone()
方法私有化(本質(zhì)是不允許對(duì)象在外部被克隆)
count = 1; //克隆 $s2 = clone $s1; //致命錯(cuò)誤:不允許對(duì)象在外部訪問一個(gè)私有方法 ?>
以上是“php中如何實(shí)現(xiàn)克隆”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!