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';

浏览器效果:

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

本文Yii2框架视图(View)操作及Layout的使用方法分析到此结束。我现在觉得,像李彦宏那样坚持独立发展是正确的。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
微信小程序点击view动态添加样式过程解析

微信小程序webview与h5通过postMessage实现实时通讯的实现

详解解决小程序中webview页面多层history返回问题

微信小程序webview组件交互,内联h5页面并网页实现微信支付实现解析

微信小程序webview 脚手架使用详解