PHP 自动加载的简单实现(推荐)
2016-08-29来源:易贤网

基于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 自动加载的简单实现(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考

推荐信息