現有乙個類:
usermodel.class.php
<?php
class usermodel
public function logout()
}?>
另乙個php檔案想要使用該類,需要把該類檔案載入進來。
<?php
require('./'.$property.'.class.php');
$user = new usermodel();
$user->login();
?>
這樣就可以輸出「登入」了;
而當需要載入的檔案很多時,寫成千上百個require顯得不現實,我們可以考慮下__autoload() 方法
<?php
function __autoload($property)
$user = new usermodel();
$user->login();
?>
這麼做的好處是:
__autoload()實現了自動載入的功能,乙個方法頂成千上百個require...
當例項化乙個未宣告的類的時候,系統自動呼叫__autoload()方法,把該類作為引數傳進去,並require進改檔案作為宣告。
而且引進(require)過一次後,同樣可以在生命週期內生效,避免再次例項化再次引進(require)。
當然,我們不一定要__autoload(),可以自己寫乙個方法,然後告訴系統這個方法是自動載入方法:
spl_autoload_register('方法名');//告知系統
function 方法名(){//使用者自定義自動載入方法
require ....
還可以註冊類的靜態方法當自動載入函式。
類的自動載入
require humanmodel.php lisi new humanmodel lisi t 如上,沒有require時,報錯手動require進來 如果 比較大,model模擬較多 如humanmodel usermodel 等等 1.這麼多的model類,我用誰,就include requ...
自動載入類
思考 有哪些類檔案需要載入?回答 一共有三種 1.核心框架類 已經確定好了 2.控制器類 可以增加 3.模型類 可以增加 對於所有的類,可以分成兩個方面來考慮 1.對於已經確定好了的類,最好採用最簡潔的方式進行直接載入 2.對於不確定的可以增加類,需要通過類名的規律,完成其位置的判斷,然後再進行自動...
自動載入類
tostring 方法 class ren r new ren echo r 這個方法要有返回值,寫在類裡,輸出物件的引用 轉殖物件 class ren r new ren c clone r echo c name echo c name 李四 如果修改的時候獲取的是修改的內容 載入類首先再建乙個...