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创建基本身份认证站点的方法详解
Jun 08 PHP
深入Apache与Nginx的优缺点比较详解
Jun 17 PHP
CI(CodeIgniter)框架配置
Jun 10 PHP
php中实现精确设置session过期时间的方法
Jul 17 PHP
PHP高手需要要掌握的知识点
Aug 21 PHP
smarty模板引擎使用内建函数foreach循环取出所有数组值的方法
Jan 22 PHP
PHP使用DirectoryIterator显示下拉文件列表的方法
Mar 13 PHP
php将图片保存为不同尺寸图片的图片类实例
Mar 30 PHP
PHP 前加at符合@的作用解析
Jul 31 PHP
PHP简单实现模拟登陆功能示例
Sep 15 PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
Oct 11 PHP
Laravel配置全局公共函数的方法步骤
May 09 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
mysql 搜索之简单应用
2007/04/27 PHP
百度工程师讲PHP函数的实现原理及性能分析(二)
2015/05/13 PHP
详解php与ethereum客户端交互
2018/04/28 PHP
jquery 弹出层注册页面等(asp.net后台)
2010/06/17 Javascript
JS和Jquery获取和修改label的值的示例代码
2014/01/15 Javascript
利用jquery操作Radio方法小结
2014/10/20 Javascript
Node.js中HTTP模块与事件模块详解
2014/11/14 Javascript
JavaScript中Cookie操作实例
2015/01/09 Javascript
Jquery 1.9.1源码分析系列(十二)之筛选操作
2015/12/02 Javascript
JS在onclientclick里如何控制onclick的执行
2016/05/30 Javascript
jQuery模拟select实现下拉菜单功能
2016/06/20 Javascript
基于AngularJS实现的工资计算器实例
2017/06/16 Javascript
微信小程序实现手势图案锁屏功能
2018/01/30 Javascript
AngularJS下$http服务Post方法传递json参数的实例
2018/03/29 Javascript
JavaScript实现淘宝京东6位数字支付密码效果
2018/08/18 Javascript
基于Vue2实现简易的省市区县三级联动组件效果
2018/11/05 Javascript
d3绘制基本的柱形图的实现代码
2018/12/12 Javascript
[40:12]Liquid vs Chaos 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
使用PYTHON创建XML文档
2012/03/01 Python
Python简单生成8位随机密码的方法
2017/05/24 Python
Python中property函数用法实例分析
2018/06/04 Python
Python多线程应用于自动化测试操作示例
2018/12/06 Python
用Python实现BP神经网络(附代码)
2019/07/10 Python
Python3 venv搭建轻量级虚拟环境的步骤(图文)
2019/08/09 Python
纯css3实现走马灯效果
2014/12/26 HTML / CSS
雅诗兰黛香港官网:Estee Lauder香港
2017/09/26 全球购物
香港草莓网:Strawberrynet香港
2019/05/10 全球购物
哈萨克斯坦最大的时装、鞋子和配饰在线商店:Lamoda.kz
2019/11/19 全球购物
结婚周年感言
2014/02/24 职场文书
《王二小》教学反思
2014/02/27 职场文书
2015年党务公开工作总结
2015/05/19 职场文书
假如给我三天光明读书笔记
2015/06/26 职场文书
《海上日出》教学反思
2016/02/23 职场文书
2016年六一儿童节开幕词
2016/03/04 职场文书
Python入门之使用pandas分析excel数据
2021/05/12 Python
浅谈Web Storage API的使用
2021/06/23 Javascript