Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在silex中注册命名空间而不使用编写器_Php_Composer Php_Autoload_Silex - Fatal编程技术网

Php 在silex中注册命名空间而不使用编写器

Php 在silex中注册命名空间而不使用编写器,php,composer-php,autoload,silex,Php,Composer Php,Autoload,Silex,我正在使用silex为我正在构建的应用程序构建api,我想将我的控制器抽象到不同的文件中 我在一家相当大的公司工作,公司的IT部门非常严格,他们不允许我安装composer。由于这个原因,我需要通过$loader->add()函数手动注册名称空间,但我得到以下错误: Fatal error: Class 'App\Controller\SessionController' not found in C:\path\to\webroot\App\bootstrap.php on line 9 有

我正在使用silex为我正在构建的应用程序构建api,我想将我的控制器抽象到不同的文件中

我在一家相当大的公司工作,公司的IT部门非常严格,他们不允许我安装composer。由于这个原因,我需要通过
$loader->add()
函数手动注册名称空间,但我得到以下错误:

Fatal error: Class 'App\Controller\SessionController' not found in C:\path\to\webroot\App\bootstrap.php on line 9
有人知道为什么自动加载器不接收我的应用程序名称空间吗

目前,我的应用程序结构如下:

App/
    Controller/
        ApiControllerAbstract.php
        SessionController.php
    bootstrap.php
vendor/
www/
    index.php
index.php

require_once "../app/bootstrap.php";
$loader = require_once __DIR__.'/../vendor/autoload.php';
$loader->add('App', __DIR__ . '/../App/');


$app = new Silex\Application();


$app->mount('/session', new App\Controller\SessionController());

$app->run();
namespace App\Controller;

class SessionController extends ApiControllerAbstract {

    public function connect( $app)
    {
        $this->app = $app;
        $controller_collection = $app['controllers_factory'];

        // DECLARE ALL YOUR ROUTES HERE
        //...


    }

}
bootstrap.php

require_once "../app/bootstrap.php";
$loader = require_once __DIR__.'/../vendor/autoload.php';
$loader->add('App', __DIR__ . '/../App/');


$app = new Silex\Application();


$app->mount('/session', new App\Controller\SessionController());

$app->run();
namespace App\Controller;

class SessionController extends ApiControllerAbstract {

    public function connect( $app)
    {
        $this->app = $app;
        $controller_collection = $app['controllers_factory'];

        // DECLARE ALL YOUR ROUTES HERE
        //...


    }

}
SessionController.php

require_once "../app/bootstrap.php";
$loader = require_once __DIR__.'/../vendor/autoload.php';
$loader->add('App', __DIR__ . '/../App/');


$app = new Silex\Application();


$app->mount('/session', new App\Controller\SessionController());

$app->run();
namespace App\Controller;

class SessionController extends ApiControllerAbstract {

    public function connect( $app)
    {
        $this->app = $app;
        $controller_collection = $app['controllers_factory'];

        // DECLARE ALL YOUR ROUTES HERE
        //...


    }

}
你好,, 以下一行:

$loader->add('App','DIR'/../App/);
应该是:

$loader->add('App','DIR'/../);