0

这是我的第一篇文章。

我是 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";
}
?>
4

1 回答 1

2

您收到错误是一个事实,因为尝试访问$test您的视图中的 a 而不通过控制器渲染是错误的。

您将始终使用渲染函数传递变量,或者只是检查它是否已if(isset($test))在您的视图文件中设置。

干杯!

于 2013-08-09T08:53:48.673 回答