コード例 #1
0
 /**
  * Flash Messenger View Helper
  * @return string
  */
 public function __invoke($namespace = null)
 {
     $flashMessenger = new \Zend\Mvc\Controller\Plugin\FlashMessenger();
     $messageString = '';
     $namespaces = $this->namespaces;
     if (!is_null($namespace)) {
         // Allow an array or single
         if (!is_array($namespace)) {
             $namespaces = array($namespace);
         } else {
             $namespaces = $namespace;
         }
     }
     foreach ($namespaces as $ns) {
         $flashMessenger->setNamespace($ns);
         $messages = array_merge($flashMessenger->getMessages(), $flashMessenger->getCurrentMessages());
         if (empty($messages)) {
             continue;
         }
         $viewModel = new ViewModel(array('namespace' => $ns, 'messages' => implode('<br />', $messages)));
         $viewModel->setTemplate('flash-messenger/' . $ns);
         $messageString .= $this->getRenderer()->render($viewModel);
     }
     return $messageString;
 }