问题:
如果您想在Zend Framework 2导航中放置HTML标记,例如:
<?php
'navigation' => array(
default' => array(
array(
'label' => '<i class="fa fa-home"></i>Home',
'route' => 'home',
),
...我们希望用视图助手来显示它。
<?php echo $this->navigation('navigation')->menu())?>...ZF将自动转义所有HTML。其结果将是:
<i class="fa fa-home"></i>Home (No HTML markup was rendered.)那么我们如何在菜单标签中呈现标记呢?
发布于 2015-01-25 17:39:17
我想自己回答这个问题,因为我在其他地方找不到答案,这可能对你有帮助。
解决办法真的很简单。视图助手$this->navigation('navigation')->menu()有一个方法,它就是这样做的!该方法称为->escapeLabels()。只要加上它,你就完成了:
<?php echo $this->navigation('navigation')->menu()->escapeLabels(false)?>警告:当然,在从您不能信任的源(例如用户输入)呈现未转义的文本时,请始终小心。
https://stackoverflow.com/questions/28139389
复制相似问题