Je suis le cours de framework PHP Yii2 et j'ai rencontré un problème. Je ne connais pas très bien PHP donc j'ai du mal à comprendre cela.
J'ai donc essayé de créer un bouton "Supprimer" sur mon site Web mais j'ai eu l'erreur : "Impossible d'utiliser les paramètres de position après les paramètres nommés".
Il y a un extrait de code :
'class' => 'yii\grid\ActionColumn', 'buttons' => [ 'delete' => function ($url) { return Html::a(text:'Delete', $url, [ 'data-method' => 'post' ]); } ]
Ce n'est pas un problème Yii2, si vous consultez la page de documentation php elle parle de ce cas, elle dit :
Cela a du sens, si PHP vous permet de mettre les paramètres nommés en premier, puis les paramètres de position, il n'y a aucun moyen de savoir quels paramètres doivent correspondre aux paramètres unnamed que vous transmettez réellement.
Dans le cas contraire, le premier argument de position est mis en correspondance un à un avec les arguments de la fonction en fonction de leur ordre, puis, lorsque vous êtes satisfait des valeurs par défaut des arguments mais que vous souhaitez attribuer une valeur à certains des autres arguments qui les suivent.
La solution la plus simple est, comme Barmar l'a dit dans les commentaires, de supprimer le
text:
et d'utiliser les paramètres de position, vos paramètres sont déjà dans le bon ordre et vous les utilisez tous.Vous pouvez également nommer tous les paramètres.
BTW, je pense que le message d'erreur dans ce cas est explicite et très clair.