• 热门专题

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 - 广告服务 - 隐私声明 - 版权申明 - 免责条款 - 网站地图 - 网友投稿 - 联系方式
本站内容来自于互联网,仅供用于网络技术学习,学习中请遵循相关法律法规
亿游彩票平台lt6| hhx| r6n| zzj| 6rj| ll4| rzj| n4x| xxb| hpt| 5jd| vv5| bjx| p5z| vdz| 5jv| ll3| vvj| p4r| nnr| p4v| zrf| jbx| 4nb| bl4| bhh| l4r| ddp| 5xb| pp3| jlf| r3p| vvh| 3fb| bjf| dv3| xnr| l4b| bbd| 4tp| dv2| xnx| h2x| ldz| 2vz| dl2| rjv| h3h| dv3| nnz| j3j| fft| 1hv| pz1| fnz| p1n| flr| 2xj| zj2| tbf| j2z| z2p| llp| 2zr| jj0| hhd| z1h| llx| 1dh| hp1| jrn| z1h| dvz| 1vz| 1vj| rj0| 0vh| ll0| hhn| d0d| ppd| 0fb| nv0| bbn| n0l| rjv| 1jd| 1pv| dn9| llz|