PHP的類自動載入機制

2021-09-08 16:37:22 字數 706 閱讀 3404

在 php開發過程中,如果希望從外部引入乙個class,通常會使用include和require方法,去把定義這個class的檔案包含進來。這個在小 規模開發的時候,沒什麼大問題。但在大型的開發專案中,這麼做會產生大量的require或者include方法呼叫,這樣不因降低效率,而且使得**難 以維護,況且require_once的代價很大。

在 php5之前,各個php框架如果要實現類的自動載入,一般都是按照某種約定自己實現乙個遍歷目錄,自動載入所有符合約定規則的檔案的類或函式。 當 然,php5之前對物件導向的支援並不是太好,類的使用也沒有現在頻繁。 在php5後,當載入php類時,如果類所在檔案沒有被包含進來,或者類名出 錯,zend引擎會自動呼叫__autoload 函式。此函式需要使用者自己實現__autoload函式。 在php5.1.2版本後,可以使用 spl_autoload_register函式自定義自動載入處理函式。當沒有呼叫此函式,預設情況下會使用spl自定義的spl_autoload函 數。

1、 __autoload示例:

function __autoload($class_name)  else {      

spl 自動載入功能是由 spl_autoload() ,spl_autoload_register(), spl_autoload_functions() ,spl_autoload_extensions() 和spl_autoload_call()函式提供的。

**

PHP的類自動載入機制

在php開發過程中,如果希望從外部引入乙個class,通常會使用include和require方法,去把定義這個class的檔案包含進來。這個在小規模開發的時候,沒什麼大問題。但在大型的開發專案中,這麼做會產生大量的require或者include方法呼叫,這樣不因降低效率,而且使得 難以維護,況且...

PHP的類自動載入機制

在php開發過程中,如果希望從外部引入乙個class,通常會使用include和require方法,去把定義這個class的檔案包含進來。這個在小規模開發的時候,沒什麼大問題。但在大型的開發專案中,這麼做會產生大量的require或者include方法呼叫,這樣不因降低效率,而且使 得 難以維護,況...

PHP類的自動載入機制

php的自動載入 在php5以前,我們要用某個類或類的方法,那必須include或者require,之後才能使用,每次用乙個類,都需要寫一條include,麻煩 php作者想簡單點,最好能引用乙個類時,如果當前沒有include進來,系統能自動去找到該類,自動引進 於是 autoload 函式應運而...