php类自动加载器实现方法


Posted in PHP onJuly 28, 2015

本文实例讲述了php类自动加载器实现方法。分享给大家供大家参考。具体如下:

这里autoload 可兼容以下格式:

Cache_File_Json
class_xxx.php
xxx.class.php
  xxx.php

php代码如下:

function __autoload($className){
 $dirs=explode('_',$className);
 $fileName=array_pop($dirs);
 //print_r($dirs);
 $filePath=$fileName;
 if(is_array($dirs) && (count($dirs) > 0)){
  //echo '\n---\n'; print_r($dirs);
  $dirPath='';
  foreach ($dirs as $dir){
   if($dir){
    $dirPath.=strtolower($dir).DIRECTORY_SEPARATOR;
   }
  }
  $filePath=$dirPath.$fileName.'.php';
 }else {
  if( file_exists('class_'.$fileName.'.php')){
   $filePath='class_'.$fileName.'.php';
  }else {
   if( file_exists($fileName.'.class.php')){
    $filePath=$fileName.'.class.php';
   } else {
    $filePath=$fileName.'.php';
   }
  } 
 }
 //var_dump($filePath);
 require $filePath;
}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
第十三节 对象串行化 [13]
Oct 09 PHP
PHP 反射机制实现动态代理的代码
Oct 22 PHP
PHP中基本符号及使用方法
Mar 23 PHP
PHP项目开发中最常用的自定义函数整理
Dec 02 PHP
php中mysql模块部分功能的简单封装
Sep 30 PHP
PHP中集成PayPal标准支付的实现方法分享
Feb 06 PHP
PHP中source #N问题的解决方法
Jan 27 PHP
PHPUnit测试私有属性和方法功能示例
Jun 12 PHP
PHP PDOStatement::getAttribute讲解
Feb 01 PHP
php写入文件不覆盖的实例讲解
Sep 17 PHP
PHP实现创建一个RPC服务操作示例
Feb 23 PHP
PHP 计算至少是其他数字两倍的最大数的实现代码
May 26 PHP
PHP实现的json类实例
Jul 28 #PHP
php无序树实现方法
Jul 28 #PHP
分享PHP函数实现数字与文字分页代码
Jul 28 #PHP
PHP实现简单汉字验证码
Jul 28 #PHP
PHP代码实现表单数据验证类
Jul 28 #PHP
在Mac上编译安装PHP7的开发环境
Jul 28 #PHP
详谈PHP编码转换问题
Jul 28 #PHP
You might like
php下过滤HTML代码的函数
2007/12/10 PHP
php实现无限级分类实现代码(递归方法)
2011/01/01 PHP
php使用qr生成二维码的示例分享
2014/01/20 PHP
PHP连接和操作MySQL数据库基础教程
2014/09/29 PHP
PHP读取汉字的点阵数据
2015/06/22 PHP
PHP简单处理表单输入的特殊字符的方法
2016/02/03 PHP
php+redis消息队列实现抢购功能
2018/02/08 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
事件模型在各浏览器中存在差异
2010/10/20 Javascript
前台js改变Session的值(用ajax实现)
2012/12/28 Javascript
Javascript执行效率全面总结
2013/11/04 Javascript
DOM基础教程之事件对象
2015/01/20 Javascript
javascript中cookie对象用法实例分析
2015/01/30 Javascript
JavaScript中的关联数组问题
2015/03/04 Javascript
AngularJS 遇到的小坑与技巧小结
2016/06/07 Javascript
vue.js学习之UI组件开发教程
2017/07/03 Javascript
完美解决linux下node.js全局模块找不到的情况
2018/05/16 Javascript
layui点击导航栏刷新tab页的示例代码
2018/08/14 Javascript
js的各种数据类型判断的介绍
2019/01/19 Javascript
史上最为详细的javascript继承(推荐)
2019/05/18 Javascript
解析Python编程中的包结构
2015/10/25 Python
numpy.random.seed()的使用实例解析
2018/02/03 Python
python读csv文件时指定行为表头或无表头的方法
2019/06/26 Python
python使用socket 先读取长度,在读取报文内容示例
2019/09/26 Python
python实现udp传输图片功能
2020/03/20 Python
Python环境下安装PyGame和PyOpenGL的方法
2020/03/25 Python
解决python Jupyter不能导入外部包问题
2020/04/15 Python
Oracle的内存结构(Memory structures)
2015/06/10 面试题
.NET方向面试题
2014/11/20 面试题
儿子婚宴答谢词
2014/01/09 职场文书
学生实习证明模板汇总
2014/09/25 职场文书
政府四风问题整改措施
2014/10/04 职场文书
学校体育节班级口号
2015/12/25 职场文书
python 遍历磁盘目录的三种方法
2021/04/02 Python
Nginx location 和 proxy_pass路径配置问题小结
2021/09/04 Servers
使用CSS定位HTML元素的实现方法
2022/07/07 HTML / CSS