如何从数组中获取值并在zend框架工作中分配给视图

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从数组中获取值并在zend框架工作中分配给视图相关的知识,希望对你有一定的参考价值。

我在php中执行存储过程并且iam返回一个数组

       ["record"]=>
   array(1175) {
   [0]=>
array(20) {
  ["Col1"]=>
  string(1) "Mode"
  ["col2"]=>
  string(16) "type"
   }
   }

我如何从数组中获取col1和col2值并将其分配给视图。我应该说什么

$view-.results = $result_val['record'];
$view->col1 = ????
$view->col2 = ????
答案

从控制器,您可以使用以下方法将数据分配给视图

$this->view->myData = "something";

然后在视图phtml文件中:

echo $this->myData;

所以在控制器中它的$ this->视图和视图中的$ this。

在您的情况下,假设您的数组被称为$ records:

$this->view->records = $records;

那么在你看来:

foreach($this->records as $record){
   echo 'Col1 = ' . $record['Col1']. "<BR />";
   echo 'Col2 = ' . $record['Col2']. "<BR />";
}

希望这可以帮助。

另一答案

在控制器中:

$this->view->record=$record[0]

在视图中:

echo $this->record["col1"]
echo $this->record["col2"]
另一答案

我这样做

// this is to set the view files path

$view = $this->view;
$view->addHelperPath(APPLICATION_PATH . "/../themes/" . $siteName."/views/helpers");
$view->addScriptPath(APPLICATION_PATH . "/../themes/" . $siteName."/views/scripts"); // or addBasePath(), if you prefer
$viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer');
        $viewRenderer->setView($view);

然后从控制器分配值

$this->view->featuredProducts = $featuredProducts;

然后,在视图文件中.....

<?php foreach($this->featuredProducts As $fpIndex=>$featuredProduct){?>
-----
<?php } ?>
另一答案

例如,您可以使用assign方法添加变量数组

$array = array('var1' => 'val1', 'var2' => 'val2');
$this->view->assign($array);

如果您在视图中执行上述操作,则可以使用

$this->view->var1
$this->view->var2

等等

希望这可以帮助。

以上是关于如何从数组中获取值并在zend框架工作中分配给视图的主要内容,如果未能解决你的问题,请参考以下文章

渲染不同的视图脚本,将数据传递给该视图并在 Zend 中获取输出

在 Combine 的 `assign(to:on:)` 主题中分配给 @State 不会导致视图更新

表视图控制器在弹出窗口中分配给 contentViewController 属性时不显示数据

C#,抛出错误试图从二维数组中获取值并在 TryParse 中使用它

获取不同视图中存在的选择器视图的选定值并在其他视图中使用字符串

在php中分配给关联数组切片