Yii2框架视图(View)操作及Layout的使用方法分析

本文实例讲述了Yii2框架视图(View)操作及Layout的使用方法。分享给大家供大家参考,具体如下:

渲染视图

1.我们在Default 控制器里做演示

<?php
namespace app\controllers;
use yii\helpers\Url;
use yii\web\Controller;
class DefaultController extends Controller
{
  public function actionIndex()
  {
//    echo Url::toRoute(['index','id'=>11],true);
//    //http://localhost/yiipro/web/default/index?id=11
//
//    echo Url::base();
//    ///yiipro/web
    // 返回视图
    return $this->render('index');
  }
}

return $this->render('index'); 就是渲染视图

2.浏览器访问http://localhost/yiipro/web/index.php/default/,发现报错了

这里写图片描述

views/default/index.php

说明视图文件要放在views/default 目录下。

我们去创建视图

这里写图片描述

再次访问:

这里写图片描述

3.如何向视图传递变量

return $this->render('index',['username'=>'张三','age'=>22]);

<p><?php echo \yii\helpers\Html::encode($username); ?></p>
<p><?php echo \yii\helpers\Html::encode($age); ?></p>

这里写图片描述

布局layout

1.默认布局

这里写图片描述

yii\base\Application::$layout = 'main'
app\module\admin\Module::$layout = 'main';

不使用layout,在控制器中加入属性public $layout = false
或方法中动态修改$this->layout = false
也可以使用$this->renderPartial()代替$this->render()

2.新建布局

View/layout/default.php

这里写图片描述

我们要在Default控制器里使用这个布局,写上:

public $layout = 'default';

浏览器效果:

这里写图片描述

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/6031.html