php中使用__autoload()自动加载未定义类的实现代码


Posted in PHP onFebruary 06, 2013

下面是一段使用__autoload()的代码,供大家学习参考:

<?php
/**
* 自动加载相关类库文件
*/
function __autoload($classname){
if(substr($classname,-6)=="Action"){
include APP_PATH.'controllers/'.$classname.'.class.php';
}elseif(substr($classname, -5)=="Model"){
include APP_PATH.'models/'.$classname.'.class.php';
}elseif($classname=="Smarty"){
include SYSTEM_PATH.'smarty/Smarty.class.php';
}else{
include APP_PATH.'common/'.$classname.'.class.php';
}
}
?>

另一种包含路径的方法:

<?php
function __autoload($class_name) {
$path = str_replace('_', DIRECTORY_SEPARATOR, $class_name);
require_once $path.'.php';
}
?>

说明:将下划线转换为目录分隔符(DIRECTORY_SEPARATOR),这样做即可以有效管理库文件,又解决了跨平台的问题。

PHP 相关文章推荐
解析PHP提交后跳转
Jun 23 PHP
php5.3 注意事项说明
Jul 01 PHP
ThinkPHP的I方法使用详解
Jun 18 PHP
PHP解析目录路径的3个函数总结
Nov 18 PHP
如何使用Gitblog和Markdown建自己的博客
Jul 31 PHP
使用Appcan客户端自动更新PHP版本号(全)
Jul 31 PHP
smarty循环嵌套用法示例分析
Jul 19 PHP
Yii框架实现邮箱激活的方法【数字签名】
Oct 18 PHP
[原创]php集成安装包wampserver修改密码后phpmyadmin无法登陆的解决方法
Nov 23 PHP
PHP递归删除多维数组中的某个值
Apr 17 PHP
ThinkPHP3.2框架操作Redis的方法分析
May 05 PHP
laravel5.1 ajax post 传值_token示例
Oct 24 PHP
php中使用preg_match_all匹配文章中的图片
Feb 06 #PHP
php中使用addslashes函数报错问题的解决方法
Feb 06 #PHP
深入理解ob_flush和flush的区别(ob_flush()与flush()使用方法)
Feb 06 #PHP
php中设置index.php文件为只读的方法
Feb 06 #PHP
php中选择什么接口(mysql、mysqli)访问mysql
Feb 06 #PHP
php连接mssql的一些相关经验及注意事项
Feb 05 #PHP
用php随机生成福彩双色球号码的2种方法
Feb 04 #PHP
You might like
给初学者的30条PHP最佳实践(荒野无灯)
2011/08/02 PHP
基于curl数据采集之单页面并行采集函数get_htmls的使用
2013/04/28 PHP
Yii中表单用法实例详解
2016/01/05 PHP
PHP调用Mailgun发送邮件的方法
2017/05/04 PHP
在js(jquery)中获得文本框焦点和失去焦点的方法
2012/12/04 Javascript
jQuery中after的两种用法实例
2013/07/03 Javascript
js setTimeout()函数介绍及应用以倒计时为例
2013/12/12 Javascript
JavaScript中诡异的delete操作符
2015/03/12 Javascript
jQuery实现精美的多级下拉菜单特效
2015/03/14 Javascript
javascript常用正则表达式汇总
2015/07/31 Javascript
基于打包工具Webpack进行项目开发实例
2018/05/29 Javascript
详解在vue-cli中使用graphql即vue-apollo的用法
2018/09/08 Javascript
详解如何为你的angular app构建一个第三方库
2018/12/07 Javascript
js数组去重的方法总结
2019/01/18 Javascript
JS代码检查工具ESLint介绍与使用方法
2020/02/04 Javascript
Vue的Options用法说明
2020/08/14 Javascript
js实现前端界面导航栏下拉列表
2020/08/27 Javascript
python 布尔操作实现代码
2013/03/23 Python
Windows8下安装Python的BeautifulSoup
2015/01/22 Python
Java实现的执行python脚本工具类示例【使用jython.jar】
2018/03/29 Python
TensorFlow实现随机训练和批量训练的方法
2018/04/28 Python
Python之inspect模块实现获取加载模块路径的方法
2018/10/16 Python
Django MEDIA的配置及用法详解
2019/07/25 Python
python 通过手机号识别出对应的微信性别(实例代码)
2019/12/22 Python
解决django xadmin主题不显示和只显示bootstrap2的问题
2020/03/30 Python
python+requests接口自动化框架的实现
2020/08/31 Python
Python安装Bs4的多种方法
2020/11/28 Python
80年代复古T恤:TruffleShuffle
2018/07/02 全球购物
英国曼彻斯特宠物用品品牌:Bunty Pet Products
2019/07/27 全球购物
业绩考核岗位职责
2014/02/01 职场文书
遗嘱公证书标准样本
2014/04/08 职场文书
安全教育演讲稿
2014/05/09 职场文书
网络文明传播志愿者活动方案
2014/08/20 职场文书
小学生光盘行动倡议书
2015/04/28 职场文书
公司与个人合作协议书
2016/03/19 职场文书
Django数据库(SQlite)基本入门使用教程
2022/07/07 Python