2024 日本 PHP 研討會

Yaf_Loader::registerLocalNamespace

(Yaf >=1.0.0)

Yaf_Loader::registerLocalNamespace註冊本地類別前綴

說明

public Yaf_Loader::registerLocalNamespace(混合 $prefix): void

註冊本地類別前綴名稱,Yaf_Loader會在兩個程式庫目錄中搜尋類別。一個是透過 application.library.directory(在 application.ini 中)設定的,稱為本地程式庫目錄;另一個是透過 yaf.library(在 php.ini 中)設定的,稱為全域程式庫目錄,因為它可以被同一伺服器上的多個應用程式共用。

當觸發自動載入時,Yaf_Loader 會透過檢查遺漏類別名稱的前綴名稱來決定應該在哪個程式庫目錄中搜尋。如果前綴名稱已註冊為本地命名空間,則會在本地程式庫目錄中搜尋;否則,會在全域程式庫目錄中搜尋。

注意事項:

如果未設定 yaf.library,則全域程式庫目錄會被假設為本地程式庫目錄。在這種情況下,所有自動載入都會在本地程式庫目錄中搜尋。但如果您希望您的 Yaf 應用程式更穩固,請務必將您自己的類別註冊為本地類別。

參數

prefix

一個字串或一個類別名稱前綴的陣列。所有具有這些前綴的類別都將在本地程式庫路徑中載入。

回傳值

布林值

範例

範例 #1 Yaf_Loader::registerLocalNamespace() 範例

<?php
$loader
= Yaf_Loader::getInstance('/local/library/', '/global/library');
$loader->registerLocalNamespace("Baidu");
$loader->registerLocalNamespace(array("Sina", "Weibo"));

$loader->autoload("Baidu_Name"); // 在 '/local/library/' 中搜尋
$loader->autoload("Sina"); // 在 '/local/library/' 中搜尋
$loader->autoload("Global_Name");// 在 '/global/library/' 中搜尋
$loader->autoload("Foo_Bar"); // 在 '/global/library/' 中搜尋

?>
新增註釋

使用者貢獻的註釋

此頁面沒有使用者貢獻的註釋。
To Top