我正在尝试使用Silex php 微框架创建扩展以进行用户身份验证,但我似乎无法让自动加载器工作。任何人都可以解释一下吗?
我有这样的目录结构(截断)
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();
});
}
}
除了抛出这个错误之外,一切都非常简单:
Fatal error: Class 'MyNamespace\UserExtension' not found in /home/meouw/Projects/php/usertest/www/index.php on line 8
我已经涉足 symfony2 并成功地按照设置通用类加载器的说明进行操作,但在这种情况下我很难过。我错过了什么吗?任何帮助,将不胜感激。