码迷,mamicode.com
首页 > 数据库 > 详细

sql_autoload_register() 函数 和__autoload() 的区别

时间:2015-12-17 12:48:39      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

1:__autoload($class) 因为是一个函数,所以只能定义一次,使用多个会冲突报错;而 sql_autoload_register(‘function‘) 可定义多个,它有效地创建一个队列的自动装载函数并按顺序依次定义

2:SPL函数很丰富,有更多的操作空间:如spl_autoload_unregister()注销已经注册的函数、spl_autoload_functions()返回所有已经注册的函数等

技术分享

3: 自动加载对象更加方便,很多框架都是这样做的:

 1 class ClassAutoloader {
 2     public function __construct() {
 3         spl_autoload_register(array($this, ‘loader‘));
 4     }
 5     private function loader($className) {
 6         echo ‘Trying to load ‘, $className, ‘ via ‘, __METHOD__, "()\n";
 7         include $className . ‘.php‘;
 8     }
 9 }
10 
11 $autoloader = new ClassAutoloader();
12 
13 $obj = new Class1();
14 $obj = new Class2();

总结:推荐使用sql_autoload_register()函数,抛弃__autoload()

sql_autoload_register() 函数 和__autoload() 的区别

标签:

原文地址:http://www.cnblogs.com/q8197264/p/5053638.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!