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 相关文章推荐
用mysql内存表来代替php session的类
Feb 01 PHP
PHP 文章中的远程图片采集到本地的代码
Jul 30 PHP
php下正则来匹配dede模板标签的代码
Aug 21 PHP
php中获取指定IP的物理地址的代码(正则表达式)
Jun 23 PHP
Linux fgetcsv取得的数组元素为空字符串的解决方法
Nov 25 PHP
浅谈discuz密码加密的方式
May 22 PHP
探寻PHP脚本不报错的原因
Jun 12 PHP
PHP数组操作――获取数组最后一个值的方法
Apr 14 PHP
php操作路径的经典方法(必看篇)
Oct 04 PHP
php技巧小结【推荐】
Jan 19 PHP
PHP自定义函数判断是否为Get、Post及Ajax提交的方法
Jul 27 PHP
阿里云Win2016安装Apache和PHP环境图文教程
Mar 11 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
SONY ICF-SW07收音机电路分析
2021/03/02 无线电
用PHP实现WEB动态网页静态
2006/10/09 PHP
PHP安装攻略:常见问题解答(一)
2006/10/09 PHP
PHP 字符串分割和比较
2009/10/06 PHP
兼容性最强的PHP生成缩略图的函数代码(修改版)
2011/01/18 PHP
php读取mysql乱码,用set names XXX解决的原理分享
2011/12/29 PHP
fetchAll()与mysql_fetch_array()的区别详解
2013/06/05 PHP
php+js实现图片的上传、裁剪、预览、提交示例
2013/08/27 PHP
通过php动态传数据到highcharts
2017/04/05 PHP
PHP使用SMTP邮件服务器发送邮件示例
2018/08/28 PHP
如何让您的中波更粗更长 - 中波框形天线制作
2021/03/10 无线电
jQuery焦点图切换特效插件封装实例
2013/08/18 Javascript
防止jQuery ajax Load使用缓存的方法小结
2014/02/22 Javascript
js获取客户端网卡的IP地址、MAC地址
2014/03/26 Javascript
JS的事件绑定深入认识
2014/06/26 Javascript
基于jQuery实现响应式圆形图片轮播特效
2015/11/25 Javascript
jQuery AJAX timeout 超时问题详解
2016/06/21 Javascript
vue scroller返回页面记住滚动位置的实例代码
2018/01/29 Javascript
vue填坑之webpack run build 静态资源找不到的解决方法
2018/09/03 Javascript
详解在Javascript中进行面向切面编程
2019/04/28 Javascript
详解jenkins自动化部署vue
2019/05/14 Javascript
浅谈ECMAScript 中的Array类型
2019/06/10 Javascript
使用webpack/gulp构建TypeScript项目的方法示例
2019/12/18 Javascript
探究Python多进程编程下线程之间变量的共享问题
2015/05/05 Python
大家都说好用的Python命令行库click的使用
2019/11/07 Python
python 利用turtle模块画出没有角的方格
2019/11/23 Python
pytorch随机采样操作SubsetRandomSampler()
2020/07/07 Python
Python实现对word文档添加密码去除密码的示例代码
2020/12/29 Python
深入浅析HTML5中的SVG
2015/11/27 HTML / CSS
澳大利亚在线奢侈品时尚零售平台:Azura Runway
2021/01/13 全球购物
教育专业个人求职信
2013/12/02 职场文书
小学生环保演讲稿
2014/04/25 职场文书
团日活动总结怎么写
2014/06/25 职场文书
教师个人自我评价
2015/03/04 职场文书
《画家和牧童》教学反思
2016/02/17 职场文书
创业计划书之密室逃脱
2019/11/08 职场文书