PHP 自动加载的简单实现(推荐)


Posted in PHP onAugust 12, 2016

基于psr的规范,使用命名空间和spl_autoload_register()来实现自动加载

文件结构:

|--Api

|--Account.php

|--User.php
|--Service

|--Login.php

|--User.php

|--Application.php

Application.php

<?php
use Api\User;
use Service\User as User2;
class Application{
  public static function main(){
    self::registe();
    new User();
    new User2();
  }
  public static function registe(){
    spl_autoload_register("Application::loadClass");
  }
  public static function loadClass($class){
    $class=str_replace('\\', '/', $class);
    $class="./".$class.".php";
    require_once $class;    
  }
}
Application::main();

Api\User.php

<?php
namespace Api;

use Service\Login;
class User{
  public function __construct(){
    echo "User类<br/>";
    new Login();
    new Account();
  }
}

Api\Account.php

<?php
namespace Api;

class Account{
  public function __construct(){
    echo "Account类<br/>";
  }
}

Service\Login.php

<?php
namespace Service;

class Login{
  public function __construct(){
    echo "Login类<br/>";
  }
}

Service\User.php

<?php
namespace Service;

class User{
  public function __construct(){
    echo "Service下的User类<br/>";
  }
}

结果:

PHP 自动加载的简单实现(推荐) 

以上这篇PHP 自动加载的简单实现(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
用PHP调用数据库的存贮过程!
Oct 09 PHP
Windows下的PHP5.0详解
Nov 18 PHP
php 数组的合并、拆分、区别取值函数集
Feb 15 PHP
php后退一页表单内容保存实现方法
Jun 17 PHP
php计算十二星座的函数代码
Aug 21 PHP
php实现信用卡校验位算法THE LUHN MOD-10示例
May 07 PHP
php批量删除数据库下指定前缀的表以prefix_为例
Aug 24 PHP
PHP抓取网页、解析HTML常用的方法总结
Jul 01 PHP
使用PHP+AJAX让WordPress动态加载文章的教程
Dec 11 PHP
PHP使用trim函数去除字符串左右空格及特殊字符实例
Jan 07 PHP
PHP实现微信网页授权开发教程
Jan 19 PHP
php-fpm添加service服务的例子
Apr 27 PHP
py文件转exe时包含paramiko模块出错解决方法
Aug 12 #PHP
PHP url的pathinfo模式加载不同控制器的简单实现
Aug 12 #PHP
PHP命令行执行整合pathinfo模拟定时任务实例
Aug 12 #PHP
谈谈PHP连接Access数据库的注意事项
Aug 12 #PHP
总结PHP中DateTime的常用方法
Aug 11 #PHP
php使用curl详细解析及问题汇总
Aug 11 #PHP
PHP实现四种基础排序算法的运行时间比较(推荐)
Aug 11 #PHP
You might like
ThinkPHP php 框架学习笔记
2009/10/30 PHP
PHP中date()日期函数有关参数整理
2011/07/19 PHP
基于Zend的Captcha机制的应用
2013/05/02 PHP
PHP 使用MySQL管理Session的回调函数详解
2013/06/21 PHP
根据中文裁减字符串函数的php代码
2013/12/03 PHP
Windows下编译PHP5.4和xdebug全记录
2015/04/03 PHP
PHP迭代器接口Iterator用法分析
2017/12/28 PHP
thinkphp整合系列之极验滑动验证码geetest功能
2019/06/18 PHP
JavaScript 在线压缩和格式化收藏
2009/01/16 Javascript
js获取元素在浏览器中的绝对位置
2010/07/24 Javascript
Javascript 静态页面实现随机显示广告的办法
2010/11/17 Javascript
在网站上应该用的30个jQuery插件整理
2011/11/03 Javascript
js数组去重的常用方法总结
2014/01/24 Javascript
JS判断是否长按某一键的方法
2016/03/02 Javascript
简述Matlab中size()函数的用法
2016/03/20 Javascript
js 中获取制定的cook信息实现方法
2016/11/19 Javascript
详解nodejs中exports和module.exports的区别
2017/02/17 NodeJs
加载 vue 远程代码的组件实例详解
2017/11/20 Javascript
vue-cli3.0使用及部分配置详解
2018/08/29 Javascript
mpvue中使用flyjs全局拦截的实现代码
2018/09/13 Javascript
JavaScript监听一个DOM元素大小变化
2020/04/26 Javascript
vue data有值,但是页面{{}} 取不到值的解决
2020/11/09 Javascript
antd table按表格里的日期去排序操作
2020/11/17 Javascript
[02:09:59]火猫TV国士无双dota2 6.82版本详解(下)
2014/09/29 DOTA
在python中创建指定大小的多维数组方式
2019/11/28 Python
Pyspark获取并处理RDD数据代码实例
2020/03/27 Python
python实现磁盘日志清理的示例
2020/11/05 Python
CSS3 实现的火焰动画
2020/12/07 HTML / CSS
工业自动化毕业生自荐信范文
2014/01/04 职场文书
百度吧主申请感言
2014/01/12 职场文书
科级干部考察材料
2014/02/15 职场文书
车间机修工岗位职责
2014/02/28 职场文书
小学生母亲节演讲稿
2014/05/07 职场文书
授权委托书(完整版)
2014/09/10 职场文书
2014小学语文教学工作总结
2014/12/17 职场文书
初中美术教学反思
2016/02/17 职场文书