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

__autoload函数在PHP面向对象程序设计中非常有用,它可以在程序尝试使用未定义的类时自动加载相应的类文件。本文通过一个具体实例展示了如何实现类的动态引用及文件的动态包含。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

__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是自动捕获的类名,可以当做函数形参。

转载于:https://www.cnblogs.com/picaso/archive/2012/10/04/2711289.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值