在我的控制器中我有这个方法
<?php
function test($value){
$products = $this->Model->getProducts($id);
for($i=0; $i < count($products); $i++){
foreach ($products[$i] as $key => $value) {
return $value;
}
}
}
?>
如何从View中访问它?
答案 0 :(得分:3)
如果在控制器中生成变量,并且想要在视图中访问它,则可以使用
$this->set('value', $value);
这样您也可以在相关视图中使用$ value。
如果您确实想要从视图中访问某个函数,则不希望将该函数放在控制器中,而是放在帮助器中。 (根据经验,你可以将你想要的功能放在助手的视图中,以及你希望组件中的控制器可以访问的功能。)如果你不喜欢在Cake Cookbook等中阅读更多关于助手的信息,那么可能值得一读。我不知道从哪里开始!
编辑:要获得循环的所有相关值,您可以尝试类似:
$products = $this->Model->getProducts($id);
$results = array();
for($i=0; $i < count($products); $i++){
foreach ($products[$i] as $key => $value) {
$results[] = $value;
}
}
$this->set(compact('results'));