Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.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
PHPSlim3框架-我可以把我的控制器文件放在哪里?_Php_Frameworks_Slim 3 - Fatal编程技术网

PHPSlim3框架-我可以把我的控制器文件放在哪里?

PHPSlim3框架-我可以把我的控制器文件放在哪里?,php,frameworks,slim-3,Php,Frameworks,Slim 3,我向容器注册了一个控制器,但它似乎不起作用,因为它与正确的位置不匹配 \slim\src\routes.php <?php // Routes $app->get('/dd', 'App\controllers\HomeController:home'); 也许我应该设置\slim\src\settings.php 因为它显示应用程序错误: 类型:RuntimeException消息:可调用 App\Controller\HomeController不存在文件: D:\htdocs

我向容器注册了一个控制器,但它似乎不起作用,因为它与正确的位置不匹配

\slim\src\routes.php

<?php
// Routes
$app->get('/dd', 'App\controllers\HomeController:home');
也许我应该设置\slim\src\settings.php

因为它显示应用程序错误:

类型:RuntimeException消息:可调用 App\Controller\HomeController不存在文件: D:\htdocs\slim\vendor\slim\slim\CallableResolver.php行:90

最后,我还要提到这些文章:

PHP Slim框架创建控制器

如何在Slim Framework 3上创建中间件?

如果忘记在
HomeController
文件中定义名称空间,请将此行添加到
HomeController.php
的顶部:

namespace App\controllers\HomeController;

将psr-4添加到composer文件中,以便能够调用名称空间

{
    "require": {
        "slim/slim": "^3.12
    },
    "autoload": {
        "psr-4": {
            "App\\": "app"
        }
    }
}
此PSR描述了从文件路径自动加载类的规范。然后在routes.php文件的顶部添加以下内容:

<?php
    use app\controllers\HomeController;
    // Routes
    $app->get('/dd', 'App\controllers\HomeController:home');

{
    "require": {
        "slim/slim": "^3.12
    },
    "autoload": {
        "psr-4": {
            "App\\": "app"
        }
    }
}
<?php
    use app\controllers\HomeController;
    // Routes
    $app->get('/dd', 'App\controllers\HomeController:home');
<?php
    namespace app\controllers;
    class HomeController 
    {
    //.. your code
    }