Autoloader クラス

Autoloader クラスは Fuel の自動読み込み機能です。自動読み込み処理に影響するメソッドも提供します。

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

add_namespace メソッドは名前空間とそのパスを追加します。

静的 はい
パラメータ
パラメータ デフォルト 説明
$namespace 必須 名前空間
$path 必須 名前空間のパス
$psr
false
PSR-0 に準拠した名前空間である場合は、 true をセットします。
返り値 Void
Autoloader::add_namespace('Mynamespace', PKGPATH.'mynamespace/');

// 入れ子になっている名前空間は、二重のバックスラッシュを付ける
Autoloader::add_namespace('Nested\\Namespace', PKGPATH.'nested/');

add_namespaces($namespace, $prepend = false)

add_namespaces メソッドは名前空間の配列を付け加えます。

静的 はい
パラメータ
パラメータ デフォルト 説明
$namespace 必須 名前空間の配列。
$prepend false 配列の先頭に加えたいなら true にします。
返り値 Void
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 必須 当該クラスのパス
返り値 Void
Autoloader::add_class('Namespace\\Class', PKGPATH.'namespace/classes/class.php');

add_classes($classes)

add_class メソッドはクラスの配列を追加します。

静的 はい
パラメータ
パラメータ デフォルト 説明
$classes 必須 クラスの配列
返り値 Void
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 '' 別名としたい名前空間
返り値 Void
Autoloader::alias_to_namespace('Mynamspace\\Myclass');

// 名前空間の別名を付ける
Autoloader::alias_to_namespace('Mynamspace\\Myclass', 'Other\\Namespace\\');

add_core_namespace($namespace, $prefix = false)

add_core_namespace メソッドは、名前空間のプレフィックス無しで使われるかもしれないクラスに対して、グローバル名前空間の別名となる名前空間を付けます。 クラスにプレフィックスを付けると、コアクラスとそれまで付けられていた種々の名前空間をそのプレフィックスを付けて上書きします。

静的 はい
パラメータ
パラメータ デフォルト 説明
$namespace 必須 名前空間
$prefix false 名前空間にプレフィックスを付けたいときは true を設定してください。
返り値 Void
Autoloader::add_core_namespace('Mynamespace');

load($class)

load メソッドは、当該クラスの探査を試み、読み込み、_init メソッドが存在した場合はそれを動作させます。

静的 はい
パラメータ
パラメータ デフォルト 説明
$class 必須 クラス名
返り値 Void
Autoloader::load('Model_Users');
	

処理ヘルパー

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

import 関数は COREPATH 内の php ファイルをインポートします。

パラメータ
パラメータ デフォルト 説明
$path string 必須 ファイルパス
$folder string
'classes'
パスの前に付けるフォルダ。COREPATH からの相対パス
返り値 string
// Spyc をインポートする
	import('spyc/spyc', 'vendor');