首頁 >後端開發 >php教程 >PHP PSR-4 Autoloader 自動載入中文版 nt6 oem loader loader啟動工具 skse loader

PHP PSR-4 Autoloader 自動載入中文版 nt6 oem loader loader啟動工具 skse loader

WBOY
WBOY原創
2016-07-29 08:54:031721瀏覽

Autoloader

關鍵字「必須」("MUST")、「一定不可/一定不能」("MUST NOT")、「需要」("REQUIRED")、
「將會」("SHALL")、「不會”("SHALL NOT")、“應該”("SHOULD")、“不該”("SHOULD NOT")、
“推薦”("RECOMMENDED")、“可以”("MAY")和”可選「("OPTIONAL")的詳細描述可參考[RFC 2119][] 。

1. 概述

本PSR 是關於由文件路徑 自動載入 對應類別的相關規範,
本規範是可互通的,可以作為任一自動載入規範的補充,其中包括 PSR-0,此外,
本PSR 還包括自動載入的類別對應的檔案存放路徑規格。

2. 詳細說明

  1. 此處的「類別」泛指所有的class類別、介面、traits可重複使用程式碼區塊以及其它類似結構。

  2. 一個完整的類別名稱需要具有以下結構:

    <code>\<span><<span>命名空间</span>></span>(\<span><<span>子命名空间</span>></span>)*\<span><<span>类名</span>></span></code>
    1. 完整的類別名稱必須要有一個頂層命名空間,被稱為"vendor namespace";

      要有一個頂層命名空間,被稱為"vendor namespace";
    2. 可以有一個或多個子命名空間;

    3. 完整的類名必須有一個最終的類名;

    4. 完整的類名中任意一部分中的下滑線都是沒有特殊含義的;

    5. 完整的類別名稱可以由任意大小寫字母組成;

    6. 所有類別名稱都必須是大小寫敏感的。

  3. 當根據完整的類別名稱載入對應的檔案…

    1. 完整的類別名稱中,去掉最前面的命名空間分隔符,前面連續的一個或多個命名空間和子命名空間,作為“命名空間前綴”,其必須與至少一個“文件基目錄”相對應;

    2. 緊接命名空間前綴後的子命名空間必須與相應的”文件基目錄“相匹配,其中的命名空間分隔符號將作為目錄分隔符號。

    3. 末尾的類別名稱必須與對應的以 .php 為後綴的檔案同名。

    4. 自動載入器(autoloader)的實作一定不能拋出異常、一定不能觸發任一層級的錯誤訊息、不應該有回傳值。

3. 範例

下表展示了符合規範完整類別名稱、命名空間前綴和檔案基底目錄所對應的檔案路徑。

fripf -log-writer/lib/./acme -log-writer/lib/File_Writer.phpAuraWebResponseStatusAuraWeb/path/to/aura-web/src//path/path/Re ./vendor/Symfony/Core/注意:實例並屬於規範的一部分,且隨時有所變動。 以上就介紹了PHP PSR-4 Autoloader 自動載入中文版,包含了loader方面的內容,希望對PHP教學有興趣的朋友有幫助。
完整類別名稱 命名空間前綴 檔案基底目錄 檔案路徑
SymfonyCoreRequest SymfonyCore
./vendor/Symfony/Core/Request.php ./vendor/Symfony/Core/Request.php🜎 /includes/Zend/ / usr/includes/Zend/Acl.php
關於本規範的實現,可參閱 相關實例
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn