Concaténation avec Lame dans Laravel
J'essaye d'accéder à une colonne de table dans mon ItemController. Dans cet exemple, je souhaite utiliser les valeurs dans mon tableau + une chaîne concaténée à pour le nom de la colonne.
ItemController.php
....
public function displayItems() {
$itemsList = array('Alpha','Bravo','Charlie','Delta');
//$results = returned mysql row here
return view('items', ['rs' => $results, 'items' => $itemsList]);
}
page.blade.php
@foreach ($items as $item)
//$item is used elsewhere too, so keep $item
{{$rs->$item.'_data'}}
@endforeach
De sortie souhaité:
$rs->Alpha_data;
$rs->Delta_data;
etc
Comment puis-je définir dynamiquement une variable $rs->nom ?
Tir dans le noir: les Essayer
{{ $rs->${$item.'_data'} }}
OriginalL'auteur Ashley Brown | 2016-03-31
Vous devez vous connecter pour publier un commentaire.
Essayer de faire ceci:
http://php.net/manual/en/language.variables.variable.php
strtolower()
sur$item.'_data'
?Essayez
{{ $rs->${strtolower($item).'_data'} }}
.OriginalL'auteur Alexey Mezenin