0
プラグイン/
私の現在の構造であり、
| ---/symfonyの/
私はこのように私のコードを持っている:
set_include_path(DIR_FS_CATALOG.'plugins');
require_once(DIR_FS_CATALOG.'plugins/Symfony/Component/ClassLoader/UniversalClassLoader.php');
// load the class loader and dependency injection component
$loader = new Symfony\Component\ClassLoader\UniversalClassLoader();
$loader->registerNamespaces(array('plugins\\plugin1' => __DIR__.'/plugins/plugin1/lib', 'plugins' => DIR_FS_CATALOG.'plugins'));
$loader->registerNamespace('Symfony',__DIR__.'/plugins');
$loader->register();
use plugins\plugin1\MyClass;
MyClass::init();
致命的なエラー:クラスのプラグイン\ plugin1 \ MyClassの「私は私が間違って何をしただろう
を見つけていませんか?どんな助けでも大歓迎です。
があり、この例であります名前空間あなたが私が意味するものを見るでしょう それはあなたがファイル構造と異なる名前空間を持つことができるのだろうか? – mr1031011
最後のコードブロックについて話しているとすれば、クラスローダーにクラスファイルの検索場所を指示するため、これは機能します。したがって、 'MyClass'が'/plugin1/lib'ディレクトリにある場合、この名前空間を明示的に登録する必要があります。しかし、 '/ plugin1'と'/plugin1/lib'のクラスを同じ名前空間に登録することはできません。 – prehfeldt