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

Simple implementation method of PHP automatic loading

墨辰丷
Release: 2023-03-29 08:58:02
Original
1464 people have browsed it

本篇文章主要介绍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();
Copy after login

Api\User.php

<?php
namespace Api;

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

Api\Account.php

<?php
namespace Api;

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

Service\Login.php

<?php
namespace Service;

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

Service\User.php

<?php
namespace Service;

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

结果:

 

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

相关推荐:

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!

Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template