我在 Application/view/layout/layout.phtml 中编写了这段代码,用于添加指向当前页面的链接。这是我为了调试目的而添加的,用于刷新当前页面。
<li class="active"><a href="<?php echo $this->url() ?>"><?php echo $this->translate('Refresh') ?></a></li>
只要我没有无效路由(404 错误),它就可以正常工作。我得到以下致命错误
致命错误:未捕获的异常“Zend\View\Exception\RuntimeException”与消息“未提供 RouteMatch 实例”
我不想通过在尝试呈现 url 之前添加一个条件来检查它是 404 错误还是无效路由来处理这个问题。我不知道该怎么做。我试图查看 Zend\View\View 类和 ViewModel 类的源代码,看看是否有一种方法可以获得错误代码或可以告诉它 404 错误的东西。
编辑:
作为最后的手段,我添加了如下所示的 try catch 块,它工作正常,但想检查是否有任何优雅的方式
<?php
try{
$url = $this->url();
?>
<li class="active"><a href="<?php echo $url ?>"><?php echo $this->translate('Refresh ') ?></a></li>
<?php
} catch (Exception $ex) {
}
?>