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

 更新时间:2016年08月12日 09:55:20   投稿:jingxian  
下面小编就为大家带来一篇PHP 自动加载的简单实现(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

基于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设计模式之命令模式使用示例,命令模式将一个请求封装为一个对象,从而你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销操作
    2014-03-03
  • ThinkPHP CURD方法之table方法详解

    ThinkPHP CURD方法之table方法详解

    ThinkPHP CURD方法的table方法主要用于指定操作的数据表。这篇文章主要介绍了table方法用法,需要的朋友可以参考下
    2014-06-06
  • ThinkPHP之M方法实例详解

    ThinkPHP之M方法实例详解

    这篇文章主要介绍了ThinkPHP的M方法,需要的朋友可以参考下
    2014-06-06
  • PHP5.4起内置web服务器使用方法

    PHP5.4起内置web服务器使用方法

    这篇文章主要为大家详细介绍了PHP5.4内置web服务器,内置的Web服务器只是提供开发测试使用,不推荐使用中生产环境中,具体内容请阅读下文
    2016-08-08
  • 通过dbi使用perl连接mysql数据库的方法

    通过dbi使用perl连接mysql数据库的方法

    这篇文章主要介绍了通过dbi使用perl连接mysql数据库的方法,需要的朋友可以参考下
    2014-04-04
  • thinkPHP5.0框架开发规范简介

    thinkPHP5.0框架开发规范简介

    这篇文章主要介绍了thinkPHP5.0框架开发规范,简单分析了thinkPHP5.0各种变量、常量、文件、目录、类库等命名规范与注意事项,需要的朋友可以参考下
    2017-03-03
  • php实现文件下载功能的几个代码分享

    php实现文件下载功能的几个代码分享

    我们一般实现下载都是调用url来下载,但是遇到ie能识别打开的文件就不能用这种方式了,比如下载一个图片、html网页等,这时就需要编程来实现
    2014-05-05
  • laravel 数据迁移与 Eloquent ORM的实现方法

    laravel 数据迁移与 Eloquent ORM的实现方法

    laravel 提供了很实用的 Eloquent ORM 模型类,简单、直观的与数据库进行交互。同时使用数据迁移管理数据库,可以与团队进行共享以及编辑,本文详细的介绍了laravel 数据迁移与 Eloquent ORM的实现方法,感兴趣的可以了解一下
    2019-04-04
  • PHP文件管理之实现网盘及压缩包的功能操作

    PHP文件管理之实现网盘及压缩包的功能操作

    这篇文章主要介绍了PHP文件管理之实现网盘及压缩包的功能操作,需要的朋友可以参考下
    2017-09-09
  • ThinkPHP5对接IOS苹果支付代码

    ThinkPHP5对接IOS苹果支付代码

    前端在调起苹果支付前,先请求到服务端,服务端先生成一条充值记录,但是状态为:未支付;然后把这个订单id发给前端,前端在支付完成的时候,会收到苹果的支付凭证,将此凭证和订单id回传给服务端,订单id的作用是用来确定是哪一笔,支付凭证是拿来校验是否支付成功
    2023-08-08

最新评论