Laravel compact()
P粉697408921
P粉697408921 2023-12-13 23:50:03
0
1
471

J'ai une question intéressante sur le compact en PHP et le compact dans Laravel.

Prenons cet exemple compact en PHP :

$banana = "yellow";
$apple = "red";
$result = compact('banana','apple');
var_dump($result);
//Output  
array(2) {
["banana"]=>
string(6) "yellow"
["apple"]=>
string(3) "red"
}

Mais lorsque j'utilise la vue de retour compacte sur le contrôleur dans Laravel, elle renvoie une variable au lieu d'un tableau

public function fruisColor($banana="yellow",$apple="red"){
  return view('template.fruits',compact('banana','apple'));
}

Mais quand j'obtiens cette variable dans le template blade, ce n'est pas un tableau mais une variable, voir :

P1 = {{ $banana }} e P1 = {{ $apple }}

Si PHP convertit de manière compacte les variables en tableaux, pourquoi dans le panneau de modèle ne renvoie-t-il que var ? Cela ne devrait pas être :

P1 = {{ $banana[0] }} e P1 = {{ $apple[0] }}

Ça a l’air déroutant, n’est-ce pas ?

P粉697408921
P粉697408921

répondre à tous(1)
P粉502608799

Étant donné que les deux paramètres de la méthode view acceptent un tableau qui, selon la documentation, les convertit en variables pouvant être utilisées dans les modèles de lame, Laravel peut gérer le tableau renvoyé par compact.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal