这是我的第一篇文章。
我是Yii框架的新手。
我现在遇到渲染视图的问题。 当我渲染Controller时,我得到一个未定义的变量错误。
我不明白为什么我得到一个未定义的变量错误,尽管变量获取错误被if语句包围。
下面的代码是我简化我正在实际工作的代码。
请帮帮我! 我想知道为什么我得到一个未定义的变量错误,而且我想知道如何解决这个问题。
非常感谢提前!!!
+++ Controller +++
class CategoryController extends Controller
{
public function actionIndex()
{
$flag = false;
if($flag){
$this->render('index', array('test'=>$flag));
}
//This causes "Undefined variable:test" Error.
$this->render('index');
//This works fine.
//$this->render('index', array('test'=>$flag));
}
}
+++ View(使用布局视图渲染。+++
<?php
if($test){
echo "$test is false";
}else{
echo "$test is true";
}
?>
答案 0 :(得分:2)
您收到错误的事实是因为尝试访问视图中的$test
而未通过控制器呈现它是错误的。
您可以随时使用渲染功能传递varible,或者只是检查视图文件中是否设置了if(isset($test))
。
干杯!