如何簡單的實現php自動載入

來源:互聯網
上載者:User
下面就為大家帶來一篇PHP 自動載入的簡單實現(推薦)。覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起過來看看吧

基於psr的規範,使用命名空間和spl_autoload_register()來實現自動載入

檔案結構:

|--Api
  |--Account.php
  |--User.php
|--Service
  |--Login.php
  |--User.php

|--Application.php

Application.php

<?phpuse 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

<?phpnamespace Api;use Service\Login;class User{  public function construct(){    echo "User類<br/>";    new Login();    new Account();  }}

Api\Account.php

<?phpnamespace Api;class Account{  public function construct(){    echo "Account類<br/>";  }}

Service\Login.php

<?phpnamespace Service;class Login{  public function construct(){    echo "Login類<br/>";  }}

Service\User.php

<?phpnamespace Service;class User{  public function construct(){    echo "Service下的User類<br/>";  }}

結果:

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.