每日17點準時技術乾貨分享
建立物件例項:
<?php /** * php建立物件的六種方式 */class personpublic static function getobjbyself()//動態延遲繫結,能識別呼叫者public static function getobjcbystatic()}//person子類 teacherclass teacher extends person}//1、new 類名();建立物件$obj1 = new person();//等價於寫法 $obj1 = new person;echo '類名:'.get_class($obj1).'
';echo $obj1->getname().'';//2、將類名字串賦值給乙個變數,通過變數建立$clsname = 'person';$obj2 = new $clsname();echo '類名:'.get_class($obj2).'
';echo $obj2->getname().'';//3、通過物件例項建立物件$obj3 = new $obj2();echo '類名:'.get_class($obj3).'
';echo $obj3->getname().'';//4、通過 new self()//$obj4 = (new $obj3())->getobjbyself();$obj4 = person::getobjbyself();echo '類名:'.get_class($obj4).'
';echo $obj4->getname().'';//5、通過 new parent()$obj5= teacher::getobjbyparent();echo '類名:'.get_class($obj5).'
';echo $obj5->getname().'';//6、通過 new static();$obj6 = person::getobjcbystatic();echo '類名:'.get_class($obj6).'
';//類名:personecho $obj6->getname().''; //bruce//當用子類去呼叫時候,發現static自動識別當前呼叫者(靜態延遲繫結),返回當前呼叫者物件$obj7 = teacher::getobjcbystatic();echo '類名:'.get_class($obj7).'
';//類名:teacherecho $obj7->getname().'';//bruce$obj8 = person::getobjbyself();echo '類名:'.get_class($obj8).'
';//類名:personecho $obj8->getname().'';//new self()在子類中呼叫依舊返回原來父類的繫結$obj9 = teacher::getobjbyself();echo '類名:'.get_class($obj9).'
';//類名:personecho $obj9->getname().'';
執行結果:
php定義空物件
有時候我們直接對不存在的陣列直接定義其下標的值,不會報錯,但是我們定義不存在的物件的時候,就會報錯,這個時候我們定義乙個空物件即可.有以下三種方法 obj1 new stdclass instantiate stdclass object obj2 new class instantiate ano...
01 學習PHP物件導向 物件的建立知識小結
學習php物件導向知識小結 為什麼要需要類,以及物件 參考來自於 houdunren.com 早期程式設計由於受電腦硬體限制,程式都是追求效率,而忽略可理解性,擴充性,隨著硬體技術的發展,程式設計越來越重視多人開發,程式設計師越來越重視程式的可靠性,可擴充套件性,可維護性,所以刺激了程式語言的發展 ...
PHP 建立物件的六種方式
class demo public function getobj public function getstaticobj class demo1 extends demo echo 1.用new 類名 建立乙個物件 obj new demo 2.將類名以字串的方式放在乙個變數中 classnam...