Zend3中的控制台路由不匹配

时间:2016-09-06 07:15:51

标签: 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',
                        ],
                    ],
                ]
            ]
        ]
    ]

我的控制器有方法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时 我永远不会被发送到控制器,没有错误或任何输出。那我在做错配对吗?

就像app没有意识到它是从终端调用的。如果我从html中的getConfig移除Module.php方法,有时会返回module/MyModulefolder

1 个答案:

答案 0 :(得分:8)

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

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

菜鸟错误。