Php 为什么什么都不装呢

Php 为什么什么都不装呢,php,yii,yii2,Php,Yii,Yii2,当我要查看视图时,没有加载任何内容,即使是包含HTML页眉和页脚的默认布局,因此在源代码中也没有显示任何内容 来自控制器的代码: public function actionArt($type){ $compositions = Compositions::find() ->select(['id', 'name']) ->where('type' == $type) ->asArr

当我要查看视图时,没有加载任何内容,即使是包含HTML页眉和页脚的默认布局,因此在源代码中也没有显示任何内容

来自控制器的代码:

    public function actionArt($type){
        $compositions = Compositions::find()
            ->select(['id', 'name'])
            ->where('type' == $type)
            ->asArray()
            ->all();

        return $this->render('art', ['compositions' => $compositions]);
    }

    public function actionView($id){
        $info = Compositions::find()->where($id)->all();
        $this->render('view', ['info' => $info]);
    }
来自视图的代码:

艺术观:

<?php

/* @var $compositions */

use yii\helpers\Html;
use yii\helpers\Url;

?>

<div class="site-art">
    <?php foreach ($compositions as $composition){
        Html::a(Html::encode($composition['name']), ['site/info', 'id' => $composition['id']]);
        echo "<a href='" . Url::to(['site/view', 'id' => $composition['id']], true) . "'>{$composition['name']}</a><br>";
    } ?>
</div>
查看:

<?php

/* @var $info */

use yii\helpers\Html;
use yii\helpers\Url;

var_dump($info);

?>

<div class="site-info">
    hwerasjdajsdajsk
</div>
必须返回渲染结果,而不仅仅是调用它

return $this->render('view', ['info' => $info]);
还有这个

Html::a(Html::encode($composition['name']), ['site/info', 'id' => $composition['id']]);
现在什么都不做。您必须回显它,这样它将基本上执行与下面的行相同的操作。但更好的是,它对$composition['name']进行html编码。

您必须返回渲染结果,而不仅仅是调用它

return $this->render('view', ['info' => $info]);
还有这个

Html::a(Html::encode($composition['name']), ['site/info', 'id' => $composition['id']]);
现在什么都不做。您必须回显它,这样它将基本上执行与下面的行相同的操作。但是更好,因为它用html编码$composition['name']