yii2中如何在控制器中渲染视图并且传递参数?

yii2中如何在控制器中分配视图并且传递参数?

class HomeController extends Controller {
    public function actionIndex()
    {
        $username = '马云';
        $age = 15;
        return $this->renderPartial('index', ['username'=>$username, 'age' => $age]);  //视图文件名一般情况下最好与方法名actionIndex(index)保持一致
    }
}

在view文件夹里新建一个home文件夹(视图存放的文件夹名称与控制器名称一致)

在home文件夹里新建一个index.php文件(renderPartial()中传递的第一个参数)

视图中获取变量的方式:

<h1><?php echo $username;?></h1>
<h2><?php echo $age;?></h2>

当传递到视图中的变量很多的时候,上面的写法会变得很“臃肿”,可以用下面的方法

class HomeController extends Controller {
    public function actionIndex()
    {
        $data = [
            'username' => '马云',
            'age' => 15,
            'arr' => [
                'school' => '淡江中学',
                'class' => '三年二班',
            ],
        ];
        return $this->renderPartial('index', $data);  //视图文件名一般情况下最好与方法名actionIndex(index)保持一致
    }
}

视图中获取变量的方式:

<h1><?php echo $user['username'];?></h1>
<h1><?php echo $article['title'];?></h1>

PS:

    <?php echo $article['title'];?>可以简写为<?=$article['title'];?>
模板渲染还有一个函数:render();  此方式会继承layouts文件夹下的文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值