PHP中类的自动加载的方法


Posted in PHP onMarch 17, 2017

类的自动加载是指,在外面的页面中,并不需要去“引入”类文件,但是程序会在需要的时候动态加载需要的类文件。

方法1:使用__autoload魔术函数

当程序需要某个类时,就会去调用该函数,该函数我们需要自己去定义并在其中写好加载类文件的通用语句。

<?php
    //需要类是自动调用,而且会传进来一个类名,这个案例的文件名为21A.class.php,类名为A
     function __autoload($className){
      require "./21".$className.".class.php";
    }
    $o1 = new A();
    $o1->v1 = 10;
    echo "<br/>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');
    function auto1($className){
      $file = "./21".$className.".class.php";
      if(file_exists($file)){
        require "./21".$className.".class.php";
      }
    }
    function auto1($className){
      $file = "./22".$className.".class.php";
      if(file_exists($file)){
        require "./22".$className.".class.php";
      }
    }
    //如果需要一个雷,但这个页面还没有记载,就会依次调用auto1和auto2,知道找到该类文件并加载
  ?>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php正则
Jul 07 PHP
php获取某个目录大小的代码
Sep 10 PHP
在命令行下运行PHP脚本[带参数]的方法
Jan 22 PHP
php 自写函数代码 获取关键字 去超链接
Feb 08 PHP
PHP 杂谈《重构-改善既有代码的设计》之四 简化条件表达式
Apr 09 PHP
php在项目中寻找代码的坏味道(综艺命名)
Jul 19 PHP
php获取新浪微博数据API实例
Nov 12 PHP
国产PHP开发框架myqee新手快速入门教程
Jul 14 PHP
PHP文件缓存类示例分享
Jan 30 PHP
PHP之浮点数计算比较以及取整数不准确的解决办法
Jul 29 PHP
PHP简单获取多个checkbox值的方法
Jun 13 PHP
解决Laravel5.2 Auth认证退出失效的问题
Oct 14 PHP
thinkPHP5.0框架简单配置作用域的方法
Mar 17 #PHP
thinkPHP5.0框架环境变量配置方法
Mar 17 #PHP
php正则判断是否为合法身份证号的方法
Mar 16 #PHP
thinkPHP框架可添加js事件的分页类customPage.class.php完整实例
Mar 16 #PHP
ThinkPHP3.2框架使用addAll()批量插入数据的方法
Mar 16 #PHP
Yii1.1中通过Sql查询进行的分页操作方法
Mar 16 #PHP
php生成无限栏目树
Mar 16 #PHP
You might like
中东人咖啡哲学
2021/03/03 咖啡文化
咖啡产品发展的三大浪潮
2021/03/04 咖啡文化
PHP中的常见魔术方法功能作用及用法实例
2015/07/01 PHP
PHP+JS实现大规模数据提交的方法
2015/07/02 PHP
PHP弱类型语言中类型判断操作实例详解
2017/08/10 PHP
PHP切割整数工具类似微信红包金额分配的思路详解
2019/09/18 PHP
PHP Beanstalkd消息队列的安装与使用方法实例详解
2020/02/21 PHP
基于Jquery的动态添加控件并取值的实现代码
2010/09/24 Javascript
SuperSlide2实现图片滚动特效
2014/06/20 Javascript
Javascript中arguments对象详解
2014/10/22 Javascript
javascript作用域链(Scope Chain)用法实例解析
2015/11/30 Javascript
Angular 2应用的8个主要构造块有哪些
2016/10/17 Javascript
node使用request请求的方法
2019/12/20 Javascript
Python+MongoDB自增键值的简单实现
2016/11/04 Python
python使用pandas实现数据分割实例代码
2018/01/25 Python
解决Pycharm中import时无法识别自己写的程序方法
2018/05/18 Python
python根据list重命名文件夹里的所有文件实例
2018/10/25 Python
对Python3+gdal 读取tiff格式数据的实例讲解
2018/12/04 Python
Python 操作 ElasticSearch的完整代码
2019/08/04 Python
利用Tensorflow构建和训练自己的CNN来做简单的验证码识别方式
2020/01/20 Python
tensorflow 实现从checkpoint中获取graph信息
2020/02/10 Python
Python利用for循环打印星号三角形的案例
2020/04/12 Python
使用已经得到的keras模型识别自己手写的数字方式
2020/06/29 Python
pycharm激活码免费分享适用最新pycharm2020.2.3永久激活
2020/11/25 Python
html5实现微信打飞机游戏
2014/03/27 HTML / CSS
Rag & Bone官网:瑞格布恩高级成衣
2018/04/19 全球购物
西班牙灯具网上商店:Lampara.es
2018/06/05 全球购物
Charles & Keith欧盟:新加坡时尚品牌
2019/08/01 全球购物
幼儿园儿童节主持词
2014/03/21 职场文书
学校感恩教育活动总结
2014/07/07 职场文书
动漫设计与制作专业推荐信
2014/07/07 职场文书
企业党建工作汇报材料
2014/08/19 职场文书
新郎答谢词
2015/01/04 职场文书
锅炉工岗位职责
2015/02/13 职场文书
个人工作总结(管理人员)范文
2019/08/13 职场文书
JUnit5常用注解的使用
2021/07/02 Java/Android