php 自动加载类方法小结
2016-07-24 17:25
393 查看
类的自动加载是指,当代码运行到实例化某个对象的时候,对应的类文件还没有加载到内存中,我们定义的自动加载类的方法就会被触发去自动加载我们需要的类文件,也就是在使用
new 关键字时会触发 自动加载类的方法,以下四种方法殊途同归,拿出来跟大家分享。
1、__autoload
2、spl 常用方式
4、__autoload() 与 spl函数结合使用
new 关键字时会触发 自动加载类的方法,以下四种方法殊途同归,拿出来跟大家分享。
1、__autoload
<?php function __autoload($className){ require_once $className . '.php' ; } ?>
2、spl 常用方式
spl_autoload_extensions(".class.php,.php");// 设置自动加载类的扩展名,多个扩展名用 " , " 分隔,优先级按顺序递减 set_include_path(get_include_path().PATH_SEPARATOR."mypath/");// 设置自动加载路径,get_include_path() 是得到默认路径,PATH_SEPARATOR是路径分隔符,最后拼接的是自己的路径,当然也可以直接写自己的路径 spl_autoload_register();3、__autoload的重写形式 实现跟__autoload相同的功能
(1)先定义一个自动加载类的函数 function classLoader($className){ require_once $className.".php"; } (2)注册使用这个函数 spl_autoload_register("classLoader"); // 以上两步实现类的自动加载,
4、__autoload() 与 spl函数结合使用
<?php function __autoload($className){ //require_once $className . '.php' ; // 此处不用 require_once set_include_path("mypath/"); spl_autoload($className); } ?>
相关文章推荐
- 非Windows操作系统导入ThinkPHP.php出错
- 腾讯云服务器配置ftp~【首发】
- php protobuf
- thinkphp集成系列之短信验证码、订单通知
- PHP CURD实现的中$_GET和$_POST用法的小问题
- 快速创建yii2 RESTful api的小记
- PHP操作数据库类
- thinkphp中去掉index.php
- php学习笔记(二)php与mysql连接与用php发送SQL查询
- PHP常用的设计模式
- php面向对象和面向过程
- thinkPHP3.2.3实现自定义类的自动加载
- Zend Studio 调试Zend Debugger和XDebug
- 2016windows(10) wamp 最简单30分钟thrift入门使用讲解,实现php作为服务器和客户端的hello world
- tpc三次握手和四次断开
- PHP函数之trim
- PHP学习之路之Smarty变量调节器
- TargetProcess 中更改了域名如何修改里面的附件地址
- thinkphp中create()方法实现简单的用户注册表单验证功能
- Yii2 render 和 renderPartial 问题