其中vendor name
為每個命名空間都必須要有的乙個頂級命名空間名;
需要的話,每個命名空間下可以擁有多個子命名空間;
當根據完整的命名空間名從檔案系統中載入類檔案時,每個命名空間之間的分隔符都會被轉換成資料夾路徑分隔符;
類名稱中的每個_
字元也會被轉換成資料夾路徑分隔符,而命名空間中的_
字元則是無特殊含義的。
當從檔案系統中載入標準的命名空間或類時,都將新增.php
為目標檔案字尾;
組織名稱(vendor name)
、命名空間(namespace)
以及類的名稱(class name)
可由任意大小寫字母組成。
\symfony\core\request
=>/path/to/project/lib/vendor/symfony/core/request.php
\zend\acl
=>/path/to/project/lib/vendor/zend/acl.php
\zend\mail\message
=>/path/to/project/lib/vendor/zend/mail/message.php
\namespace\package_name\class_name
=>/path/to/project/lib/vendor/namespace/package_name/class/name.php
<?php
function
autoload
($classname)
$filename .= str_replace('_', directory_separator, $classname) . '.php';
require $filename;
}
PHP類自動載入和PSR 0規範
php的命名空間必須與絕對路徑一致 類名的首字母必須大寫 除入口檔案外,其它的.php檔案必須只有乙個類 開發乙個符合psr 0規範的框架很簡單,只要滿足下面三個條件就可以了 全部使用命名空間 php類庫檔案自動載入,不能有include require 保證有單一入口 spl standard p...
PSR 0 規範例項講解 php 自動載入
psr 0規範 1 命名空間必須與絕對路徑一致 2 類名首字母必須大寫 3 除去入口檔案外,其他 php 必須只有乙個類 4 php類檔案必須自動載入,不採用include等 5 單一入口 如下 index.php define basedie dir require once config loa...
php自動載入PSR 0原文翻譯,PSR 0中文版
已棄用 截止到2014年10月21日,psr 0已被棄用。推薦替代使用psr 4。下文描述了若要使用乙個通用的自動載入器 autoloader 你所需要遵守的規範 以上是我們為實現通用的自動載入而制定的最低標準。你可以利用能夠自動載入php 5.3類的splclassloader來測試你的 是否符合...