PHP類的聲明與執行個體化及構造方法與析構方法詳解,php詳解_PHP教程

來源:互聯網
上載者:User

PHP類的聲明與執行個體化及構造方法與析構方法詳解,php詳解


本文執行個體講述了PHP類的聲明與執行個體化及構造方法與析構方法。分享給大家供大家參考,具體如下:

<?phpclass human{  public static $leg=2;  public $name = 'leo';  public $age = '25';  public function cry(){  }}$leo = new human();print_r($leo);/*返回human Object ( [name] => leo [age] => 25 )*///為什麼沒有leg呢?//是因為加了static,就變成了類的屬性了,是屬於所有//通過這個類執行個體執行個體後的對象的//public是許可權修飾符,許可權修飾符有public,protected,private//在PHP4經常用到var,這個現在不怎麼也不推薦用,就相當於public//在PHP5中會把var解析成public?>

有沒有什麼辦法可以在new對象的時候,通過傳參數來改變對象的屬性呢?而不是千篇一律

答:可以在類中定義構造方法,即在初始化對象的時候,就會執行,並且可以接收參數

如下所示:

<?php class human{  public static $leg=2;  public $name = 'leo';  public $age = '25';  public function __construct($name,$age){    $this->name=$name;    $this->age=$age;  }}$leo = new human('macro','23');print_r($leo);/*返回human Object ( [name] => macro [age] => 23 )可以看到參數起作用了__construct就是建構函式*/?>

與建構函式相對應的就是解構函式,即當對象銷毀的時候執行的

如下所示:

<?php class human{  public static $leg=2;  public $name = 'leo';  public $age = '25';  public function __construct($name,$age){    $this->name=$name;    $this->age=$age;    echo $this->name."對象產生啦
"; } public function __destruct(){ echo $this->name."對象銷毀啦
"; }}$leo = new human('macro','23');$tim = new human('tim','18');unset($leo);echo '~~~~~~~~~~~~~~~~~~~~
';/*返回:macro對象產生啦tim對象產生啦macro對象銷毀啦~~~~~~~~~~~~~~~~~~~~tim對象銷毀啦*///__destruct是解構函式,即對象銷毀的時候調用//為什麼$tim 沒有unset 也執行了解構函式//這是一個隱式銷毀,unset是顯式銷毀//當一個頁面執行完成自動銷毀?>

更多關於PHP物件導向相關內容感興趣的讀者可查看本站專題:《php物件導向程式設計入門教程》

希望本文所述對大家PHP程式設計有所協助。

您可能感興趣的文章:

  • php學習筆記 類的聲明與對象執行個體化
  • 淺談thinkphp的執行個體化模型
  • php物件導向全攻略 (二) 執行個體化對象 使用對象成員
  • PHP 執行個體化類的一點摘記
  • PHP的構造方法,析構方法和this關鍵字詳細介紹
  • php物件導向全攻略 (四)構造方法與析構方法
  • php實現parent調用父類的構造方法與被覆寫的方法

http://www.bkjia.com/PHPjc/1096147.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1096147.htmlTechArticlePHP類的聲明與執行個體化及構造方法與析構方法詳解,php詳解 本文執行個體講述了PHP類的聲明與執行個體化及構造方法與析構方法。分享給大家供大家參...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.