首頁 > 後端開發 > PHP問題 > php建構函數的寫法是什麼

php建構函數的寫法是什麼

青灯夜游
發布: 2023-03-13 07:26:02
原創
2642 人瀏覽過

在php中,建構子是類別中的一種特殊函數,具體寫法為「public function __construct(參數列表){...代碼...}」;參數列表是可選的,不需要時可以省略。

php建構函數的寫法是什麼

本教學操作環境:windows7系統、PHP7.1版,DELL G3電腦

建構子(constructor method,也稱為構造器)是類別中的一種特殊函數,當使用new 關鍵字實例化一個物件時,建構函數將會自動呼叫。

在 PHP3.0 和 PHP4.0 中,建構函式是一個與其所在類別同名的函式。而在 PHP5 中,雖然也支援 PHP3.0 和 PHP4.0 中的用法,但比較推薦使用__construct作為類別的建構函數,這樣做的好處就是建構函數不需要隨著類別名稱的改變而做出修改。在 PHP7.0 中廢棄了 PHP3.0 和 PHP4.0 中的用法,建構子必須使用__construct來定義。

建構函數就是當物件被建立時,類別中被自動呼叫的第一個函數,而一個類別中只能存在一個建構函數。和一般函式類似建構函式也可以帶有參數,如果建構函式有參數的話,那麼在實例化也需要傳入對應的參數,例如new Students($name, $age)。

建立建構函式的語法格式如下:

public function __construct(参数列表){
    ... ...
}
登入後複製

其中,參數清單是可選的,不需要時可以省略。

如果沒有在程式碼中明確宣告建構函數,類別中會預設存在一個沒有參數列表且內容為空的建構子。如果明確地宣告建構函式則類別中的預設建構方法將不會存在。所以建構函式通常用來做一些準備工作,例如為某些參數賦值等。

注意:如果明確地宣告建構函數,那麼它的存取權必須是 public,而且建構子是在實例化時自動呼叫的,我們不需要手動呼叫。

【範例】建立一個類,並為其顯示的建立建構函數,程式碼如下:

<?php
    class Website{
        public $name, $url, $title;
        public function __construct($str1, $str2, $str3){
            $this -> name  = $str1;
            $this -> url   = $str2;
            $this -> title = $str3;
            $this -> demo();
        }
        public function demo(){
            echo $this -> name.&#39;<br>&#39;;
            echo $this -> url.&#39;<br>&#39;;
            echo $this -> title.&#39;<br>&#39;;
        }
    }
    $object = new Website(&#39;PHP中文网&#39;,&#39;https://www.php.cn/&#39;,&#39;构造函数&#39;);
?>
登入後複製

運行結果如下:

PHP中文网
https://www.php.cn/
构造函数
登入後複製

程式碼中我們用到了$this ,它表示目前所呼叫的對象,而且$this 只能在類別的方法中使用

推薦學習:《PHP影片教學

以上是php建構函數的寫法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板