Autoloader 类別

Autoloader 类別包含 Fuel 的自动載入器函式,它也提供了與自动載入程序互动的方法。

add_namespace($namespace, $path, $psr = false)

add_namespace 方法添加一个命名空間與路徑。

靜態
參数
參数 預設 描述
$namespace 必要 命名空間
$path 必要 指向命名空間的路徑
$psr
false
設定为 true 以表示这是一个 PSR-0 兼容的命名空間。
回傳
範例
Autoloader::add_namespace('Mynamespace', PKGPATH.'mynamespace/');

// 巢狀的命名空間,注意雙反斜線
Autoloader::add_namespace('Nested\\Namespace', PKGPATH.'nested/');

add_namespaces($namespace, $prepend = false)

add_namespaces 方法添加一个命名空間陣列。

靜態
參数
參数 預設 描述
$namespace 必要 命名空間的陣列
$prepend false 設定为 true 如果你想附加在前。
回傳
範例
Autoloader::add_namespaces(array(
	'Mynamespace' => PKGPATH.'mynamespace/',
	'Othernamespace' => PKGPATH.'othernamespace/',
));

namespace_path($namespace)

namespace_path 方法取回指向一个命名空間的路徑。

靜態
參数
參数 預設 描述
$namespace 必要 命名空間
回傳 指向命名空間的路徑或 false 當不存在時
範例
// /path/to/mynamespace/
$path = Autoloader::namespace_path('Mynamespace');

// false
$path = Autoloader::namespace_path('Unknown\\Namespace');

add_class($class, $path)

add_class 方法添加一个类別路徑。

靜態
參数
參数 預設 描述
$class 必要 类別名稱
$path 必要 指向类別档案的路徑
回傳
範例
Autoloader::add_class('Namespace\\Class', PKGPATH.'namespace/classes/class.php');

add_classes($classes)

add_class 方法添加一个类別陣列。

靜態
參数
參数 預設 描述
$classes 必要 类別陣列
回傳
範例
Autoloader::add_classes(array(
	'Namespace\\Class' => PKGPATH.'namespace/classes/class.php',
	'Namespace\\Other' => PKGPATH.'namespace/classes/other.php',
));

alias_to_namespace($class, $namespace = '')

alias_to_namespace 方法別名一个类別指向一个命名空間,預設是根部。

靜態
參数
參数 預設 描述
$class 必要 类別名稱
$namespace '' 要使用別名的命名空間
回傳
範例
Autoloader::alias_to_namespace('Mynamespace\\Myclass');

// 指向命名空間的別名
Autoloader::alias_to_namespace('Mynamespace\\Myclass', 'Other\\Namespace\\');

add_core_namespace($namespace, $prefix = false)

add_core_namespace 方法添加一个命名空間給可能沒有命名空間前綴的类別, 并且会自动別名到全域的命名空間。前綴类別将覆寫核心类別與先前添加的命名空間。

靜態
參数
參数 預設 描述
$namespace 必要 命名空間
$prefix false 設定为 true 以前綴命名空間
回傳
範例
Autoloader::add_core_namespace('Mynamespace');

load($class)

load 方法试圖尋找、載入类別,如存在時觸发它的 _init 函式。

靜態
參数
參数 預設 描述
$class 必要 类別名稱
回傳
範例
Autoloader::load('Model_Users');

程序助手

import($path, $folder = 'classes')

import 函式導入一个在 COREPATH 的 PHP 档案。

參数
參数 类型 預設 描述
$path 字串 必要 指向档案的路徑
$folder 字串
'classes'
要前綴路徑的文件夾,相對於 COREPATH
回傳 字串
範例
// 導入 Spyc
import('spyc/spyc', 'vendor');