當某行代碼需要一個類的時候,php的內部機制可以做到“自動加載該類文件”,以滿足該行需要一個類的這種需求。
什么時候需要一個類?
1,new一個對象的時候;
2,使用一個類的靜態方法的時候;
3,定義一個類(B)并以另一個類(A)作為父類的時候;
條件和要求
1, 當需要一個類的時候,就會自動調用某個函數(默認是__autoload),并傳入所需要的類的名字
2, 一個類應該保存到一個獨立的“類文件中”:即其中只有該類的定義,沒有別的代碼;
3,習慣上,類文件的命名要有一定的“規則”,通常是:類名.class.php
4,通常,我們需要將各種類,存儲在一些特定的目錄中,以方便確定其位置!
5,在該自動加載的函數中,“充分”使用傳過來的類名,以構建一個合適的文件路徑并載入;
自定義自動加載函數
剛才,__autoload()函數,是系統內部的自動加載函數,我們只是定義其函數體。
但:
我們可以使用更多函數(自定義的),來實現更靈活的自動加載!
基本模式為:
spl_autoload_register(“函數1”); //聲明“函數1”作為自動加載函數; spl_autoload_register(“函數2”); //聲明“函數2”也作為自動加載函數; .........
然后,就去定義這些函數,跟定義__autoload()函數一樣:
function 函數1( $class_name ){ //....... } function 函數2( $class_name ){ //....... } .............
這樣,系統就會一次調用這些自動加載函數去加載所需要的類,直到加載成功!
分享標題:php中的自動加載是什么?在什么情況下使用?-創新互聯
文章起源:http://www.2m8n56k.cn/article18/deocdp.html
成都網站建設公司_創新互聯,為您提供服務器托管、自適應網站、標簽優化、響應式網站、面包屑導航、App設計
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯