Php 未找到Silex控制器
我是Silex框架的新用户,在注册到控制器的路由方面有点(对我来说是个大问题)。Silex找不到我的控制器。 这是我的文件树: My composer.json文件: web目录中的My index.php文件:Php 未找到Silex控制器,php,controller,silex,Php,Controller,Silex,我是Silex框架的新用户,在注册到控制器的路由方面有点(对我来说是个大问题)。Silex找不到我的控制器。 这是我的文件树: My composer.json文件: web目录中的My index.php文件: <?php // web/index.php require_once __DIR__.'/../vendor/autoload.php'; use Symfony\Component\HttpFoundation\Response; use Silex\Provider\
<?php
// web/index.php
require_once __DIR__.'/../vendor/autoload.php';
use Symfony\Component\HttpFoundation\Response;
use Silex\Provider\UrlGeneratorServiceProvider;
use Silex\Provider\ValidatorServiceProvider;
use Silex\Provider\ServiceControllerServiceProvider;
use Silex\Provider\HttpFragmentServiceProvider;
$app = new Silex\Application();
$app['debug']=TRUE;
$app->get('/','HomeController::index');
$app->run();
您好,您应该使用下面的行,我希望它能帮助您
use Silex\Api\ControllerProviderInterface;
class HomeController implements ControllerProviderInterface {
您必须指定控制器的完整名称空间I将我的名称空间更改为:名称空间web\Controller\HomeController。我也有相同的错误。请尝试按照此处指定的文档进行操作。您使用的名称空间有误。您的控制器位于控制器命名空间中,并且您正在使用web\controller。查看composer psr-4键:“Controller\\”:“web/”
您告诉composer在web文件夹中加载控制器名称空间,但您定义的是web/控制器名称空间。在您的控制器中,只需使用控制器名称空间IMHO,您不应将控制器放在公共web文件夹中,最好在web和供应商目录的相同级别上有一个src文件夹。
<?php
/**
* Created by PhpStorm.
* User: Oskar
* Date: 2016-02-07
* Time: 02:27
*/
namespace web\Controller{
use Symfony\Component\HttpFoundation\Request;
use Silex\Application;
use Silex\ControllerCollection;
class HomeController
{
public function index()
{
return 'Hello Controller';
}
}
}
use Silex\Api\ControllerProviderInterface;
class HomeController implements ControllerProviderInterface {