0

簡単な呼び出しのために、すべてのクラスを「fuel/app/classes/」フォルダーに入れましたMyClass::MyMethod()

指定された「namespace lib」を使用して「fuel/app/classes/lib/」にクラスを保存し始めます。

lib\MyClass::MyMethod()提案されているよりもはるかに快適な「use lib」を呼び出したり、処方したりすることは、 http://docs.fuelphp.com/general/classes.htmlFolder_MyClass::MyMethod()を参照してください。

「bootstrap.php」にある特定の名前空間をロードする方法はありますか?ファイル(コントローラー、モデル)の先頭に「use lib」を記述する必要がないか、「lib \」のように呼び出すたびに追加する必要はありません"?

4

2 に答える 2

1

FuelPHP は、名前空間よりもクラス名セグメントを好まないクラスにカスケード ファイルシステムを使用します。唯一の要件は、クラスがクラス フォルダーのどこかにあることです。

たとえば、app/classes/some/sub/system/name/myclass.php というファイルがあるとします。

このクラスは次のように定義できます。

class Some_Sub_System_Name_Myclass {}

しかし、またとして

namespace Some\Sub\System\Name;
class Myclass {}

またはその間の何か。一般的なルールは次のとおりです。名前空間とクラス名をくっつけて小文字に変換し、すべてのアンダースコアとバックスラッシュを DIRECTORY_SEPARATOR に置き換え、「.php」拡張子を付けて、ファイル名を取得します。

于 2012-11-21T17:30:10.023 に答える
0

libおそらくコア名前空間として追加できます。でbootstrap.phpAutoloader::add_core_namespace('lib');

http://docs.fuelphp.com/classes/autoloader.html#/method_add_core_namespace

\MyClass::MyMethod();そうすれば、名前空間のプレフィックスを付けたり、名前空間を付けたりすることなく、使用できるようになります。Use lib;

于 2012-10-01T12:05:49.920 に答える