PHP经验——autoload当程序实例化的类不存在时被启发

本文介绍了PHP中自动加载类的内置函数__autoload的功能及其实现方式,通过实例展示了如何利用此函数动态加载类文件,简化了代码结构,提高了开发效率。

__autoload的功能是当程序中要使用的类不存在时,该函数将被调用。

在面向对象的程序设计中,这个函数很有用,可以使函数智能加载某些文件与类,实现文件的动态包含、类的动态引用。

下边是一个实例:

<?php
function __autoload($class_name)
 {
     $class_name = str_replace('-', '', $class_name);
     $dirs = array('/plugins/'.$class_name.'/', '/includes/', '/includes/interface/', '/includes/to/', '/includes/to/device/', '/includes/os/', '/includes/mb/', '/includes/plugin/', '/includes/xml/', '/includes/web/', '/includes/error/', '/includes/js/', '/includes/output/', '/includes/ups/');
     
     foreach ($dirs as $dir) {
         if (file_exists(APP_ROOT.$dir.'class.'.$class_name.'.inc.php')) {
             include_once APP_ROOT.$dir.'class.'.$class_name.'.inc.php';
             return;
         }
     }
 }
 ?>

实例中的 参数 $class_name是自动捕获的类名,可以当做函数形参。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值