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动态创建Flash动画
Oct 09 PHP
基于数据库的在线人数,日访问量等统计
Oct 09 PHP
?算你??的 PHP 程式大小
Dec 06 PHP
php 时间计算问题小结
Jan 04 PHP
怎样去阅读一份php源代码
Aug 21 PHP
php中邮箱地址正则表达式实现与详解
Apr 24 PHP
PHPMailer发送HTML内容、带附件的邮件实例
Jul 01 PHP
PHP读取CURL模拟登录时生成Cookie文件的方法
Nov 04 PHP
PHP标准类(stdclass)用法示例
Sep 28 PHP
Thinkphp5结合layer弹窗定制操作结果页面
Jul 07 PHP
php合并数组并保留键值的实现方法
Mar 12 PHP
用PHP的反射实现委托模式的讲解
Mar 22 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
PHP生成HTML静态页面实例代码
2008/08/31 PHP
php数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位
2011/10/31 PHP
php 搜索框提示(自动完成)实例代码
2012/02/05 PHP
php Xdebug的安装与使用详解
2013/06/20 PHP
PHP输出九九乘法表代码实例
2015/03/27 PHP
javascript各种复制代码收集
2008/09/20 Javascript
Jquery 数组操作大全个人总结
2013/11/13 Javascript
Lua表达式和控制结构学习笔记
2014/12/15 Javascript
深入理解JavaScript系列(41):设计模式之模板方法详解
2015/03/04 Javascript
简单实现异步编程promise模式
2015/07/31 Javascript
javascript自定义滚动条实现代码
2020/04/20 Javascript
分享12个实用的jQuery代码片段
2016/03/09 Javascript
easyui中combotree循环获取父节点至根节点并输出路径实现方法
2016/11/10 Javascript
JavaScript中localStorage对象存储方式实例分析
2017/01/12 Javascript
JavaScript中从setTimeout与setInterval到AJAX异步
2017/02/13 Javascript
如何给ss bash 写一个 WEB 端查看流量的页面
2017/03/23 Javascript
ES6中Proxy代理用法实例浅析
2017/04/06 Javascript
浅谈node中的exports与module.exports的关系
2017/08/01 Javascript
JavaScript定义函数的三种实现方法
2017/09/23 Javascript
jQuery移动端跑马灯抽奖特效升级版(抽奖概率固定)实现方法
2019/01/18 jQuery
JavaScript本地储存:localStorage、sessionStorage、cookie的使用
2020/10/13 Javascript
js实现简易计算器小功能
2020/11/18 Javascript
[05:08]第一届“网鱼杯”DOTA2比赛精彩集锦
2014/09/05 DOTA
Python cookbook(数据结构与算法)筛选及提取序列中元素的方法
2018/03/19 Python
正确理解Python中if __name__ == '__main__'
2019/01/24 Python
在 Python 中接管键盘中断信号的实现方法
2020/02/04 Python
PUMA澳大利亚官方网站:德国运动品牌
2018/10/19 全球购物
交通安全教育制度
2014/02/02 职场文书
竞选学生会主席演讲稿
2014/04/24 职场文书
新闻工作者先进事迹
2014/05/26 职场文书
小学教师师德师风演讲稿
2014/08/22 职场文书
模范教师材料大全
2014/12/16 职场文书
公司保洁员管理制度
2015/08/04 职场文书
反邪教教育心得体会
2016/01/15 职场文书
2019财务管理制度最新范本!
2019/07/09 职场文书
JavaScript实现队列结构过程
2021/12/06 Javascript