鍍金池/ 教程/ PHP/ 自動加載類
驗(yàn)證郵件地址
自動加載類
PHP 與 MySQL
緩存 PHP opcode
檢測一個值是否為 null 或 false
PHP 標(biāo)簽
從性能角度來看單引號和雙引號
發(fā)送郵件
處理日期和時間
define() vs. const
配置 Web 服務(wù)器提供 PHP 服務(wù)
PHP 與 UTF-8
我們在使用哪個版本的 PHP?
凈化 HTML 輸入和輸出
PHP 與正則表達(dá)式
存儲密碼
PHP 與 Memcached

自動加載類

使用 spl_autoload_register() 來注冊你的自動加載函數(shù)。

PHP 提供了若干方式來自動加載包含還未加載的類的文件。 老的方法是使用名為 autoload() 魔術(shù)全局函數(shù)。 然而你一次僅能定義一個 autoload() 函數(shù),因此如果你的程序包含一個也使用了 __autoload() 函數(shù)的庫,就會發(fā)生沖突。

處理這個問題的正確方法是唯一地命名你的自動加載函數(shù),然后使用 spl_autoload_register() 函數(shù)來注冊它。 該函數(shù)允許定義多個 autoload() 這樣的函數(shù),因此你不必?fù)?dān)心其他代碼的 autoload() 函數(shù)。

示例

<?php
// 首先,定義你的自動載入的函數(shù)
function MyAutoload($className){
    include_once($className . '.php');
}

// 然后注冊它。
spl_autoload_register('MyAutoload');

// Try it out!
// 因?yàn)槲覀儧]包含一個定義有 MyClass 的文件,所以自動加載器會介入并包含 MyClass.php。
// 在本例中,假定在 MyClass.php 文件中定義了 MyClass 類。
$var = new MyClass();
?>

進(jìn)一步閱讀

上一篇:define() vs. const下一篇:PHP 與 MySQL