php-php進階 - php類有些函數或方法的定義想通過include匯入進來,怎麼實現?

來源:互聯網
上載者:User
關鍵字 php php5.6 php-php進階 php-坑
class a{
public function a(){}
include('file.php');
}
我想這樣寫,可是不支援。

回複內容:

class a{
public function a(){}
include('file.php');
}
我想這樣寫,可是不支援。

首先要區分函數和方法的區別,你如果是要引入函數的話,在檔案頭include就可以了,不過需要判斷是否定義函數,否則會拋出函數重定義的錯誤,如果是引入的方法的話要麼用繼承要麼用trait將其變成成員,否則的話就建立一個對應的類執行個體就可以了,要注意在建立執行個體的時候,類已經成功被載入

class a{    public function a(){        include('file.php');    }}

假設你要引入類檔案需要調用裡面的類方法,現在有兩個類檔案,file.php和a.php,裡面代碼分別如下:

file.php

a.php

_fileObj = $fileObj; }}

a類要使用file類的方法,代碼如下:

_fileObj = $fileObj; }}

將file類對象傳給a類:

$file = new a(new File());

然後就可以在a類中使用file類方法了。

如果是要在類中使用函數那就更簡單了,直接將雷倩引入函數檔案即可(即將a檔案中require的檔案改成函數檔案即可),因為函數預設註冊的是根命名空間。

如果你打算在類中載入一個檔案。可以放到 __construct 中。
比如一個檔案 a.php

index.php

這樣在類中就可以負載檔案 a.php
因為 include 是一條語句, 不能直接放到類中, 放到類的初始化函數 __construct就可以自動執行。

你的想法兒不對,你還是先理解物件導向吧。
首先來說函數沒必要在對象中被引用,對象就是對象,函數就是函數,之所以是函數說明它可能無法沒明確的歸納為所屬的對象。
方法則是通過繼承的方式獲得的,不需要include的。
比如你定義了一個水果類,那麼這個類可以有 獲得果汁含量 的方法,但是不應該有榨汁的方法,那應該是榨汁機對象提供的。
包括所有方法的 萬能對象 是不存在的,這個狀態下的對象與沒有對象想成相同的結果。

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.