在视图中难免会遇到需要打印php中变量的情况,那么这样需要怎样才能让后台的数据在前端页面上进行显示呢?
这种情况就需要对视图进行数据的传递了,使得控制器中的变量可以直接在视图中显示。
视图中传递数据也很简单,大致可以分为三步:
<?php namespace app\controllers; use yii\web\Controller; class IndexController extends Controller { public function actionSay(){ $str = 'hello yii'; //第一步,创建一个数组 $arr = array(); //第二步,将数据放入数组中 $arr['text'] = $str; //第三步,传递数据 return $this->renderPartial('say',$arr); } }然后我们在视图文件中输出这个变量
//直接把传递的数据当做变量,变量名即为数组key <h1><?=$text?></h1>刷新我们的网页,就可以看到数据已经传递过来了。 数组也是类似的传递方法,我们简单的看一下代码和结果
<?php namespace app\controllers; use yii\web\Controller; class IndexController extends Controller { public function actionSay(){ $str_arr=['hello','yii']; //第一步,创建一个数组 $arr = array(); //第二步,将数据放入数组中 $arr['text_arr'] = $str_arr; //第三步,传递数据 return $this->renderPartial('say',$arr); } }视图文件中一样的将其当做一个数组来使用
<h1><?=$text_arr[0]?></h1> <h2><?=$text_arr[1]?></h2>运行结果如图