FlashMessanger中的部分视图脚本

时间:2014-03-14 08:37:57

标签: php zend-framework2 flash-message

有没有办法将局部视图脚本解析为flash消息?

我使用了一些带有html代码块的大闪存消息,并且能够读取或格式化这些消息非常糟糕。

3 个答案:

答案 0 :(得分:3)

有几种方法可以解决您正在谈论的问题,而cptnk为您提供了一个问题。但是View-Files中的代码通常不是你想要的。幸运的是,ZF2提供了一种通过配置配置相同功能的方法:

'view_helper_config' => array(
    'flashmessenger' => array(
        'message_open_format'      => '<ul><li>',
        'message_separator_string' => '</li><li>',
        'message_close_string'     => '</li></ul>'
    )
)

很久以前我已经在the official documentation内完成了这一切,其中包括Twitter Bootstrap 3 FlashMessenger布局的示例。您可能想亲自检查一下。

并直接回答您的初始问题:不可能拥有flashMessenger插件使用的专用视图文件。您必须为此编写自己的flashMessenger实现。

答案 1 :(得分:2)

您是否看过视图助手提供的html布局?

echo $this->flashMessenger()
  ->setMessageOpenFormat('<div%s><p>')
  ->setMessageSeparatorString('</p><p>')
  ->setMessageCloseString('</p></div>')
  ->render('success');

这个例子创建了一个带有类success和嵌套“p”的div。向setMessageOpenFormat添加更多标记后,请务必使用setMessageCloseString关闭它们。

答案 2 :(得分:1)

如何制作部分并将flashMessenger传递给它?

<?php // partial.phtml ?>

flashMassenger: <pre><?php var_dump($this->flashMassenger) ?></pre>

然后,您可以使用以下命令从视图脚本中调用它:

<?php echo $this->partial('partial.phtml', array(
    'flashMassenger' => $this->flashMessenger())); ?>