我與創建與Silex php micro framework進行用戶身份驗證的擴展試驗一個命名空間,但我似乎無法得到自動裝卸工作。任何人都可以擺脫光線嗎?你怎麼註冊的Silex自動加載
我有這樣(截斷)的目錄結構
usertest
|_lib
| |_silex.phar
| |_MyNamespace
| |_UserExtension.php
| |_User.php
|_www
|_index.php
的index.php的相關位,其用作自舉和前端控制器是這樣的:
require '../lib/silex.phar';
use Silex\Application;
use MyNamespace\UserExtension;
$app = new Application();
$app['autoloader']->registerNamespace('MyNamespace', '../lib');
$app->register(new UserExtension());
的我正試圖加載類似這樣的:
namespace MyNamespace;
use Silex\Application;
use Silex\ExtensionInterface;
class UserExtension implements ExtensionInterface {
public function register(Application $app) {
$app['user'] = $app->share(function() use($app) {
return new User();
});
}
}
所有非常直截了當的excep t將其拋出這個錯誤:
Fatal error: Class 'MyNamespace\UserExtension' not found in /home/meouw/Projects/php/usertest/www/index.php on line 8
我已經涉足與Symfony2中,並已成功地跟着instructions for setting up the universal class loader,但在這種情況下我難倒。我錯過了什麼嗎?任何幫助,將不勝感激。
無法重現。我試着用你提供的代碼,它成功了。你將不得不檢查你的名字或分享你的實際代碼。 – igorw 2011-05-31 19:48:13