2

我有一个这样的控制器:

namespace Application\Controller;
use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;

class IndexController extends AbstractActionController
{
    public function indexAction()
    {
        $this->view->myvar = "Hello";
    }
}

和 index.phtml 视图部分:

<html>
<head>
  <title></title>
</head>
<body
<h1><?php echo $this->myvar; ?></h1>
</body>
</html>

出于某种原因,我无法在视图中看到 Hello 字样。我得到的错误是:警告:从 C:\xampp\htdocs\myZend\module\Application\src\Application\Controller 中的空值创建默认对象\IndexController.php 第 19 行

我可以看到在控制器中分配变量的问题是问题,但我不知道为什么,这是将值分配给变量的正确方法......我是否遗漏了其他东西?

TNKS

4

2 回答 2

5

zf2中设置变量并传递给视图的正确方法:

           return new ViewModel(array(
           'varName' => $value,
         ));

然后在您的视图中检索它:

          echo $this->varName;
于 2013-08-19T13:55:06.567 回答
5
public function indexAction()
{
   $view = new ViewModel ();
   $view->myvar = "Hello";
   return $view;
}
于 2013-08-19T13:55:09.380 回答