常用的避免require/include的方法

常用的避免require/include的方法
1、使用魔术函数__autoload
php5 可以使用__autoload来避免require,用的好的话,代码里头甚至看不到几个require,真是不错的东西。测试结果表明,使用 __autoload之后比 require_once然后再实例化大概要快3倍左右。这个函数最大的用处就是在实例化一个未明确定义的类时去寻找相应的文件并载入(是动态加载 哦~)。

1 <?php
2 function __autoload( $class_name ) {
3       require_once $class_name . '.php' ;
4 }
5 $obj   = new MyClass1();
6 $obj2 = new MyClass2();
7 ?>


ps:为了减少与其它第三方类库产生冲突的可能,建议不要直接使用__autoload,而是使用spl_autoload_register(PHP 5 >= 5.1.0RC1)。ZEND框架用的就是spl_autoload_register

2、require前检查
用class_exists或者function_exists检查一下,确认没有载入过再出手,至少比require_once能快上3倍。php4也可以用上。

class_exists('MyClass') or requir('/path/MyClass.class.php');

还有其他的方法来解决这个问题,但我没使用过。如果是用PHP5之后的版本,强烈推荐第一种方式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值