zoukankan      html  css  js  c++  java
  • PHP 自动加载的简单实现(推荐)

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

    文件结构:

    |--Api

      |--Account.php

      |--User.php

    |--Service

      |--Login.php

      |--User.php

    |--Application.php

    Application.php

    <?php
    use ApiUser;
    use ServiceUser 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();

    ApiUser.php

    <?php
    namespace Api;
     
    use ServiceLogin;
    class User{
      public function __construct(){
        echo "User类<br/>";
        new Login();
        new Account();
      }
    }

    ApiAccount.php

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

    ServiceLogin.php

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

    ServiceUser.php

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

    结果:

    image.png

  • 相关阅读:
    virtual box 下安装centos 7
    java多线程通信
    redis 实现发布订阅的功能
    Ubuntu系统下为IDEA创建启动图标
    Windows玩转Docker(二):运行whalesay image
    Windows玩转Docker(一):安装
    yarn安装部署
    Hadoop yarn配置参数
    yarn的初步理解
    使用QJM部署HDFS HA集群
  • 原文地址:https://www.cnblogs.com/rxbook/p/9106536.html
Copyright © 2011-2022 走看看