PHP魔術(shù)方法以及關(guān)于獨(dú)立實(shí)例與相連實(shí)例的全面講解
<?php //魔術(shù)方法 //當(dāng)包含多個(gè)類 //1.自動(dòng)裝載類的魔術(shù)方法__autoload() function __autoload($classname){ if (isset($classname)){ require_once $classname.'.class.php'; } } /* $computer1=new Computer(); $computer1->addList('dalisng',234); echo $computer1; */ //__call()屏蔽調(diào)用方法時(shí)候產(chǎn)生的錯(cuò)誤,當(dāng)我們調(diào)用一個(gè)不存在的方法時(shí)候,會(huì)自動(dòng)調(diào)用__call()方法。 //獨(dú)立實(shí)例,兩個(gè)實(shí)例各自建立,互不干涉 $computer2=new Computer(); echo $computer2->name;echo "<br/>"; $computer3=new Computer(); echo $computer3->name;echo "<br/>"; $computer3->name="大亮"; echo '$computer3->name:'.$computer3->name;echo "<br/>"; echo '$computer2->name:'.$computer2->name;echo "<br/>"; echo "<hr/>"; //相連實(shí)例,即 用等于號(hào)來(lái)開(kāi)辟一個(gè)新的實(shí)例,此時(shí)兩個(gè)實(shí)例共同指向一個(gè)內(nèi)存地址,一損俱損,一榮俱榮 $computer4=new Computer(); echo '$computer4->name:'.$computer4->name;echo "<br/>"; $computer5=$computer4; echo '$computer5->name:'.$computer5->name;echo "<br/>"; $computer4->name="大亮"; echo '$computer4->name:'.$computer4->name;echo "<br/>"; echo '$computer5->name:'.$computer5->name;echo "<br/>"; echo "<hr/>"; //克隆__clone,克隆的新實(shí)例和被克隆的實(shí)例是兩個(gè)相互獨(dú)立的個(gè)體,雖然屬性值相同,但是屬性存放的地址不同,所以克隆后你我生死無(wú)關(guān) $computer6=new Computer(); echo '$computer6->name:'.$computer6->name;echo "<br/>"; $computer7=clone $computer6; echo '$computer7->name:'.$computer7->name;echo "<br/>"; $computer6->name="克隆"; echo '$computer6->name:'.$computer6->name;echo "<br/>"; echo '$computer7->name:'.$computer7->name;echo "<br/>";
Computer.class.php
<?php class Computer{ public $name="1234"; function __construct(){ echo "you are right!"; } function __call($methodName,$argsList){//當(dāng)方法不存在的時(shí)候會(huì)自動(dòng)調(diào)用此方法,$argsList是相應(yīng)的參數(shù) echo $methodName."()方法不存在!"; echo "<pre>"; print_r($argsList); echo "</pre>"; } private function __toString(){ //當(dāng)用戶輸出不存在的字符串時(shí)候,該方法自動(dòng)調(diào)用 比如echo 對(duì)象名 echo "我是對(duì)象的字符串!"; } }
以上就是小編為大家?guī)?lái)的PHP魔術(shù)方法以及關(guān)于獨(dú)立實(shí)例與相連實(shí)例的全面講解全部?jī)?nèi)容了,希望大家多多支持腳本之家~
相關(guān)文章
laravel中短信發(fā)送驗(yàn)證碼的實(shí)現(xiàn)方法
在做用戶注冊(cè)和個(gè)人中心的安全管理時(shí)常常需要用到短信發(fā)送驗(yàn)證碼,下面這篇文章主要給大家介紹了關(guān)于laravel中短信發(fā)送驗(yàn)證碼的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-04-04php版微信開(kāi)發(fā)之接收消息,自動(dòng)判斷及回復(fù)相應(yīng)消息的方法
這篇文章主要介紹了php版微信開(kāi)發(fā)之接收消息,自動(dòng)判斷及回復(fù)相應(yīng)消息的方法,涉及基于微信消息處理接口的調(diào)用相關(guān)操作技巧,需要的朋友可以參考下2016-09-09利用laravel搭建一個(gè)迷你博客實(shí)戰(zhàn)教程
這篇文章主要給大家介紹了關(guān)于利用laravel搭建一個(gè)迷你博客的相關(guān)資料,文中將一步步的實(shí)現(xiàn)步驟通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08laravel-admin select框默認(rèn)選中的方法
今天小編就為大家分享一篇laravel-admin select框默認(rèn)選中的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10thinkphp3.2中實(shí)現(xiàn)phpexcel導(dǎo)出帶生成圖片示例
本篇文章主要介紹了thinkphp3.2中實(shí)現(xiàn)phpexcel導(dǎo)出帶生成圖片示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02使用laravel根據(jù)用戶類型來(lái)顯示或隱藏字段
今天小編就為大家分享一篇使用laravel根據(jù)用戶類型來(lái)顯示或隱藏字段,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10PHP實(shí)現(xiàn)的簡(jiǎn)單三角形、矩形周長(zhǎng)面積計(jì)算器分享
這篇文章主要介紹了PHP實(shí)現(xiàn)的簡(jiǎn)單三角形、矩形周長(zhǎng)面積計(jì)算器分享,本文的實(shí)現(xiàn)相對(duì)較簡(jiǎn)單,同時(shí)提供了代碼文件下載,需要的朋友可以參考下2014-11-11