php - Zend3 中的控制台路由不匹配

标签 php zend-framework zend-framework3

我的 module.config.php 文件中有一个控制台路由

'console' => [
        'router' => [
            'routes' => [
                'remove' => [
                    'type'    => 'simple',
                    'options' => [
                        'route'    => 'remove [force] [init]',
                        'defaults' => [
                            'controller' => Controller\CliController::class,
                            'action'     => 'remove',
                        ],
                    ],
                ]
            ]
        ]
    ]

我的 Controller 有 removeAction() 方法

namespace Controller;

class CliController extends AbstractActionController
{
    public function removeAction()
    {
        $this->logger->debug('I am in');
    }
}

当我执行命令时 php public/index.php remove forcephp public/index.php remove 我从来没有被派去做 Controller ,也没有错误或任何输出。那我匹配错了吗?

这就像应用没有意识到它是从终端调用的。有时它只返回 html如果我删除 getConfig方法来自 Module.php在我的module/MyModulefolder .

最佳答案

问题是我没有在 modules.config.php 中包含 'Zend\Mvc\Console' 所以当它被加载时它没有反应从控制台发出命令。

将其放入 modules.config.php 中的数组后,一切正常。

新手错误。

关于php - Zend3 中的控制台路由不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39342777/

相关文章:

javascript - PHP 使用 file_get_contents 从 .txt 文件中获取最后五个单词

PHP如何将数组字符串化并存储在cookie中

php - 将视频剪辑存储到 phpmyadmin

php - Zend_Cache - "Datas must be string or set automatic_serialization = true"

mysql - Zend DB 和条件案例语句

php - zend 框架 - sql 查询的结果数组可以包含数据库名称吗?

php - Laravel - 从现有 Mysql 查询

zend-framework - 如何在 jQuery ajax 请求中声明 url 以从 zend Controller 执行操作?

mysql - Zend 2 中两个表的并集

php - ZF3导航 "plugin"错误