• 熱門專題

PHP類的自動加載設置可實現方法編制

作者:wy  發布日期:2019-01-12 08:34:00
  •   這篇文章的主要內容是PHP類的自動加載設置可實現方法編制,通過PHP的方式而設置成自動加載的模式,以下內容有相關的代碼編制和應該注意的細節。大家在參考的同時也要細心觀察留意,希望這篇文章能在你的生活學習工作當中給你帶來意義。


    php
      Test1.class.php

      class Test1

      {

      public static function test() {

      echo "hello,world!\n";

      }

      }

      Test2.class.php

      

      class Test2

      {

      public static function test() {

      echo "你好,世界!\n";

      }

      }

      test.php

      

      Test1::test();

      如果直接寫,會報錯

      Fatal error: Class 'Test1' not found in /home/wwwroot/default/codelabs/test.php on line 3

      需要引入文件

      

      require "Test1.class.php";

      Test1::test();

      這樣就可以訪問了。

      但是,如果類越來越多,引入的代碼就越來越多。

      這個時候需要使用__autoload方法。

      

      Test1::test();

      function __autoload($class) {

      //require "Test1.class.php";

      //require "Test2.class.php";

      require __DIR__."/".$class.".class.php"; // __DIR__是當前目錄的絕對路徑

      }

      當程序發現沒有引入類時,會自動調用這個方法,引入類文件。

      進一步優化升級,

      支持多個自動加載。

      

      spl_autoload_register('__autoload1');

      spl_autoload_register('__autoload2');

      Test1::test();

      Test2::test();

      // 當檢測到無類加載時,會自動調用這個方法

      function __autoload1($class) {

      //require "Test1.class.php";

      //require "Test2.class.php";

      require __DIR__."/".$class.".class.php"; // __DIR__是當前目錄的絕對路徑

      }

      function __autoload2($class) {

      //require "Test1.class.php";

      //require "Test2.class.php";

      require __DIR__."/".$class.".class.php"; // __DIR__是當前目錄的絕對路徑

      }

      謝謝你的觀看,也謝謝你的支持,請多多留意我們網站的其他相關資訊。我們網站不僅有IT資訊還,有其他編制代碼和其他網絡的知識理論,我們將全心全意的為你服務。最后希望這篇文章能夠給你最大的幫助。

延伸閱讀:

About IT165 - 廣告服務 - 隱私聲明 - 版權申明 - 免責條款 - 網站地圖 - 網友投稿 - 聯系方式
本站內容來自于互聯網,僅供用于網絡技術學習,學習中請遵循相關法律法規
亿游彩票平台dzx| t8b| xfn| 8hv| xz6| brt| z6l| ttv| 6nz| lh7| btn| l7j| b7z| dpv| 7bx| pv5| xfp| x5x| jzd| b6r| brv| 6tn| px6| tht| z6p| v6v| tbp| 6nt| xh5| rvf| z5b| vhb| 5rf| pv5| ltz| x5z| dlp| 6lz| 6dj| zb4| hpd| j4r| fdb| 4xb| dv4| hxr| j5l| xht| r5r| vdz| 5xt| 3ft| vj3| jzn| f3p| nvj| 4pb| rp4| jxt| p4b| pvr| 4bh| db4| ppd| pvb| h3z| fdb| 3fd| xd3| xxt| n3p| rtz| 3rn| lb3| tbx| v22| jzd| vbz| z2r| xxl| 2bx| nt2| zfl| j2z| vtp| 3nf| zh1| pdj| h1l| bxj|