Positionsparameter können nicht nach benannten Parametern |yiyi2 verwendet werden
P粉158473780
P粉158473780 2024-03-26 14:44:20
0
1
467

Ich nehme am Yii2-PHP-Framework-Kurs teil und bin auf ein Problem gestoßen. Ich bin mit PHP nicht sehr vertraut, daher fällt es mir schwer, das herauszufinden.

Also habe ich versucht, auf meiner Website eine Schaltfläche „Löschen“ zu erstellen, aber ich habe die Fehlermeldung erhalten: „Positionsparameter können nach benannten Parametern nicht verwendet werden.“

Es gibt einen Codeausschnitt:

'class' => 'yii\grid\ActionColumn',
'buttons' => [
    'delete' => function ($url) {
        return Html::a(text:'Delete', $url, [
            'data-method' => 'post'
        ]);
    }
]

P粉158473780
P粉158473780

Antworte allen(1)
P粉333186285

这不是 Yii2 问题,如果您检查 php 文档页面 它谈到了这个案例,它说:

这是有道理的,如果 PHP 让您先放置命名参数,然后放置位置参数,则无法确定哪些参数应与您实际传递的未命名参数相匹配。

在相反的情况下,第一个位置参数根据其顺序与函数参数一对一匹配,然后,当您对参数的默认值感到满意但想要为它们后面的其他一些参数分配一个值。

最简单的解决方案是,就像 Barmar 在评论中所说,删除 text: 并使用位置参数,您的参数已经处于正确的顺序,并且您正在使用所有参数。

您还可以命名所有参数。

顺便说一句,我认为这种情况下的错误消息是不言自明的并且非常清楚。

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage