不将变量从控制器传递到模板yii2

问题描述 投票:0回答:1

我有控制器

public function actionIndex()
    {
        $rows = Players::find()->all();


        return $this->render('index', [
            'rows' => $rows
        ]);

    }

并查看

<h1><?=$listPlayer -> name?></h1>

错误=未定义变量'$listPlayer'

我重新阅读了互联网上的所有文档和所有指南,它对每个人都适用。除了我之外

php yii yii2
1个回答
0
投票

您遇到的错误“未定义变量‘$listPlayer’”表示您正在尝试访问视图中名为

$listPlayer
的变量,但该变量尚未定义或从控制器传递。在您的控制器中,您将一个名为
$rows
的变量传递到您的视图,而不是
$listPlayer

要解决此问题,您应该使用从控制器传递的变量名称,即

$rows
。以下是您应该如何更新您的视图:

<?php foreach ($rows as $listPlayer): ?>
    <h1><?= $listPlayer->name ?></h1>
<?php endforeach; ?>

在上面的代码中,我们使用

foreach
循环来迭代
$rows
数组,其中包含您的
Players
记录。对于循环中的每个
$listPlayer
,我们可以访问其
name
属性。

© www.soinside.com 2019 - 2024. All rights reserved.