Home >Backend Development >PHP Tutorial >Simple implementation method of PHP automatic loading

Simple implementation method of PHP automatic loading

墨辰丷
墨辰丷Original
2018-06-01 15:34:091462browse

本篇文章主要介绍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(&#39;\\&#39;, &#39;/&#39;, $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/>";
  }
}

结果:

 

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

thinkPHP实现订单数字提醒功能的方法

thinkPHP商城公告功能开发问题详解

PHP实现多字段模糊匹配查询的方法

The above is the detailed content of Simple implementation method of PHP automatic loading. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn