2015-12-02 93 views
3

我有一个小Silex应用程序正在进行。试图获得某种结构。作曲家自动加载 - 找不到类

这是我composer.json

{ 
    "require": { 
     "silex/silex": "~1.3" 
    }, 

    "autoload": { 
     "psr-0": { 
      "HelloWorld\\Controller": "src/HelloWorld/Controllers" 
     } 
    } 
} 

在我web/index.php文件我在src/HelloWorld/Controllers

namespace HelloWorld\Controller; 

class IndexController 
{ 

} 

$loader = require_once __DIR__.'/../vendor/autoload.php'; 

$ctrl = new \HelloWorld\Controller\IndexController(); // <- Doesn't work 

IndexController控制器我已经试过几乎在每一个组合太阳。任何人都知道如何正确注册。 Silex的东西加载好吗?

FastCGI sent in stderr: "PHP message: PHP Fatal error: Class 'HelloWorld\Controller\IndexController' not found in /srv/http/web/index.php on line 6"

+1

我假设你在某个时候运行'''composer install''',对吧? –

+1

这似乎解决它后,也添加一个psr-4自动装载。添加它作为答案,我会接受。谢谢:) – Kal

+0

完成交易,很高兴它的工作! :) –

回答

1

我相信问题是自动加载文件还未生成,以便它知道在哪里可以找到类。尝试运行

composer install

如果你想在将来更新你的网站的组成部分,在初始安装后,可以随时运行composer update更新的存储库。