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 相关文章推荐
PHP+Mysql+jQuery实现发布微博程序 jQuery篇
Oct 08 PHP
php二分查找二种实现示例
Mar 12 PHP
ThinkPHP3.1新特性之G方法的使用
Jun 19 PHP
ThinkPHP实现跨模块调用操作方法概述
Jun 20 PHP
推荐一款MAC OS X 下php集成开发环境mamp
Nov 08 PHP
php删除文本文件中重复行的方法
Apr 28 PHP
PHP通过API获取手机号码归属地
May 28 PHP
Zend Framework框架路由机制代码分析
Mar 22 PHP
微信支付PHP SDK ―― 公众号支付代码详解
Sep 13 PHP
详解php中空字符串和0之间的关系
Oct 23 PHP
php实现将二维关联数组转换成字符串的方法详解
Jul 31 PHP
Laravel5.1 框架Middleware中间件基本用法实例分析
Jan 04 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脚本的10个技巧(7)
2006/10/09 PHP
PHP中func_get_args(),func_get_arg(),func_num_args()的区别
2013/09/30 PHP
PHP读取PPT文件的方法
2015/12/10 PHP
Linux系统中设置多版本PHP共存配合Nginx服务器使用
2015/12/21 PHP
使用laravel和ECharts实现折线图效果的例子
2019/10/09 PHP
PHP利用curl发送HTTP请求的实例代码
2020/07/09 PHP
一些常用的Javascript函数
2006/12/22 Javascript
在一个js文件里远程调用jquery.js会在ie8下的一个奇怪问题
2010/11/28 Javascript
jquery全选/全不选/反选另一种实现方法(配合原生js)
2013/04/07 Javascript
jquery实现动画菜单的左右滚动、渐变及图形背景滚动等效果
2015/08/25 Javascript
jQuery实现的分页功能示例
2017/01/22 Javascript
实例教学如何写vue插件
2017/11/30 Javascript
JavaScript的Object.defineProperty详解
2018/07/09 Javascript
Vue-Router的使用方法
2018/09/05 Javascript
JavaScript实现shuffle数组洗牌操作示例
2019/01/03 Javascript
了解在JavaScript中将值转换为字符串的5种方法
2019/06/06 Javascript
Vue-cli3项目引入Typescript的实现方法
2019/10/18 Javascript
Python中表达式x += y和x = x+y 的区别详解
2017/06/20 Python
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
2017/08/18 Python
在cmd中运行.py文件: python的操作步骤
2018/05/12 Python
python ---lambda匿名函数介绍
2019/03/13 Python
Python3网络爬虫开发实战之极验滑动验证码的识别
2019/08/02 Python
浅析PEP570新语法: 只接受位置参数
2019/10/15 Python
python 链接sqlserver 写接口实例
2020/03/11 Python
video.js支持m3u8格式直播的实现示例
2020/05/20 HTML / CSS
Orvis官网:自1856年以来,优质服装、飞钓装备等
2018/12/17 全球购物
PHP面试题及答案二
2015/05/23 面试题
学习委员自我鉴定
2014/01/13 职场文书
教师校本培训方案
2014/02/26 职场文书
大学生职业生涯规划书汇总
2014/03/20 职场文书
上课说话检讨书500字
2014/11/01 职场文书
2014年银行个人工作总结
2014/12/05 职场文书
酒店开业主持词
2015/07/02 职场文书
2016年秋季开学典礼新闻稿
2015/11/25 职场文书
MATLAB 如何求取离散点的曲率最大值
2021/04/16 Python
python实现学员管理系统(面向对象版)
2022/06/05 Python