- 此處的“類”泛指所有的class類、接口、traits可復用代碼塊以及其它類似結構
- 一個完整的類名需具有以下結構:
\\<命名空間>(\\<子命名空間>)\*\\<類名>
- 完整的類名必須要有一個頂級命名空間,被稱為 "vendor namespace"
- 完整的類名可以有一個或多個子命名空間
- 完整的類名必須有一個最終的類名
- 完整的類名中任意一部分中的下劃線都是沒有特殊含義的
- 完整的類名可以由任意大小寫字母組成
- 所有類名都必須是大小寫敏感的。
- 當根據完整的類名載入相應的文件……
- 完整的類名中,去掉最前面的命名空間分隔符,前面連續的一個或多個命名空間和子命名空間,作為“命名空間前綴”,其必須與至少一個“文件基目錄”相對應
- 緊接命名空間前綴后的子命名空間必須與相應的”文件基目錄“相匹配,其中的命名空間分隔符將作為目錄分隔符
- 末尾的類名必須與對應的以 .php 為后綴的文件同名
- 自動加載器(autoloader)的實現一定不能拋出異常、一定不能觸發任一級別的錯誤信息以及不應該有返回值