類的自動加載是指,在外面的頁面中,并不需要去“引入”類文件,但是程序會在需要的時候動態加載需要的類文件。
方法1:使用__autoload魔術函數
當程序需要某個類時,就會去調用該函數,該函數我們需要自己去定義并在其中寫好加載類文件的通用語句,代碼如下:
- <?php
- //需要類是自動調用,而且會傳進來一個類名,這個案例的文件名為21A.class.php,類名為A
- function__autoload($className){
- require"./21".$className.".class.php";
- }
- $o1=newA();
- $o1->v1 = 10;
- echo"
- v1:".$o1->v1;
- ?>
方法2:使用spl_autoload_register函數
該函數的作用是生命多個可以用來代替autoload函數作用的函數,語法如下:spl_autoload_regist("函數名1");如果用spl_autoload_register,autoload就失效了,代碼如下:
- <?php
- //注冊兩個用于自動加載的函數名
- spl_autoload_register('auto1');
- spl_autoload_register('auto2');
- functionauto1($className){
- $file="./21".$className.".class.php";
- if(file_exists($file)){
- require"./21".$className.".class.php";
- }
- }
- functionauto1($className){
- $file="./22".$className.".class.php";
- if(file_exists($file)){
- require"./22".$className.".class.php";
- }
- }
- //如果需要一個雷,但這個頁面還沒有記載,就會依次調用auto1和auto2,知道找到該類文件并加載
- ?>
新聞熱點
疑難解答