【发布时间】:2013-08-11 04:14:23
【问题描述】:
这是我的第一篇文章。
我是 Yii 框架的新手。
我现在在渲染视图时遇到问题。 渲染控制器时出现未定义变量错误。
我不明白为什么我得到一个未定义的变量错误,尽管变量得到错误是用 if 语句包围的。
下面的代码是我简化了我实际工作的代码。
请帮帮我! 我想知道我收到未定义变量错误的原因,也想知道如何解决这个问题。
提前非常感谢!!!
+++ 控制器 +++
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));
}
}
+++ 视图(这是用布局视图渲染的。+++
<?php
if($test){
echo "$test is false";
}else{
echo "$test is true";
}
?>
【问题讨论】:
-
因为
if($test)仍然需要定义一个变量。如果要测试变量是否存在,请使用if(isset($test))。 -
不应该是
$this->test -
>DCoder 谢谢,它有效!