PHP類自動加載

關於編程字體選擇,常見的等寬編程字體有:Courier New,Consolas.

推薦使用:Source Code Pro,該字體是Adobe公司專門爲程序員設計的,免費開源

 

(PHP5.3後已廢棄)先了解這個函數(魔術方法)__autoload();

__autoload()— 嘗試加載未定義的類

function __autoload($class)
{
    require __DIR__.'/'.$class.'/'.'php';
}

當調用一個不存在的類的時候,PHP會自動去調用你定義的__autoload這個函數,並把這個類名作爲該函數的參數,這個函數只需要使用正確的路徑require這個不存在的類名,即完成了類的自動加載。

 

在5.3之後,官方提供了一個spl_autoload_register();

解決的問題:一個應用裏面可能使用多個框架的類文件,通俗理解爲:各框架的路徑不同,require的 路徑不同。

spl_autoload_register — 註冊給定的函數作爲 __autoload 的實現。

大概意思是,該函數可以使任何函數名作爲__autoload函數使用,即相當於使用多個__autoload函數。

spl_aytoload_register('autoload1');
spl_aytoload_register('autoload2');

function autoload1($class)
{
    require path.'/'.$class.'php';
}

function autoload2($class)
{
    require path2.'/'.$class.'php';
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章