下面是我的Bootstrap类中定义的一个函数。在 Zend 进行路由和调度的方式中,我一定遗漏了一些基本的东西。我想要完成的事情很简单:对于任何/foo/bar/*因任何原因无法分派的请求 try /index/foo/bar/。我遇到的问题是当FooController我得到存在时Action "foo" does not exist。基本上,isDispatchable总是错误的。
public function run() {
        $front = Zend_Controller_Front::getInstance();
        $request = $front->getRequest();
        $dispatcher = $front->getDispatcher();
        //$controller = $dispatcher->getControllerClass($request);
        if (!$dispatcher->isDispatchable($request)) {
            $route = new Zend_Controller_Router_Route(
                ':action/*',
                array('controller' => 'index')
            );
            $router = $front->getRouter();
            $router->addRoute('FallBack', $route);
        }
        $front->dispatch();
    }