我在模型中写了一个函数:
public function plan_values($id)
{
echo $id;
$db = Zend_Db_Table::getDefaultAdapter();
$select = $db->select()
->from(array('h'=>'hosted_site_content'),array('h.hsc_value','h.hsc_plan'))
->joinLeft(array('m'=>'hosted_plan_content_mapping'),'h.hsc_type=m.hpcm_type_id')
->where('m.hpcm_type_id="'.$id.'"')
->order('h.hsc_plan asc');
$row = $db->fetchAll($select);
if (!$row)
{
throw new Exception("Could not find row $id");
}
return $row;
}
并将其控制器编写如下:
$planvalues = new Application_Model_DbTable_PlanList();
$this->view->planview = $planvalues->plan_values($id);
如何将值传递给视图中的变量? $这 - > planview(4); 这不是答案。它只显示输出的第4个数组元素。我想念什么吗?请帮忙。我必须将'4'值传递给函数plan_values。
答案 0 :(得分:0)
您的4
已在呼叫中使用/消费:
$planvalues->plan_values($id); // $id == 4, right?
您对$planvalues->plan_values($id)
的调用似乎应该返回行的数组。
然后,您将其作为$this->view->planview
分配到视图中。因此,在您的视图脚本中,$this->planview
正是行数据的数组。迭代数组以渲染它们。
如果要在视图脚本中显示/使用$id
值为4,请随意使用$this->view->id = $id
(在控制器中)传递它,然后将其选中我们在视图脚本中使用$this->id
。