Laravel Collections - la function combine()
Arthur Monney
@mckenziearts
Pour cette 5e partie nous allons évolué encore un peu plus et cette fois parlé de la fonction combine
. Pour voir la 4e partie cliquer sur ce lien
Description
Tu as besoin de mixer plusieurs collections entre elles ? Les combiner ? Cette méthode est parfaite pour cela. Mais attention! Pour que cela fonctionne et que tu ne rencontres pas l’erreur : array_combine(): Both parameters should have an equal number of elements
Tu dois fournir à la méthode combine()
des collections de tailles identiques.
Exemple d'utilisation
Prenons un exemple simple, tu as sur ton CV plusieurs langages à mettre en valeur et tu dois associer à chacun un niveau qui reflète ton expérience avec ce langage.
Code source #1: Langages et levels
$languages = collect([ "php", "python", "javascript", "go", "c#", "java", "cobol", "basic"]);$level = collect([ "expert", "normal", "normal", "newbie", "newbie", "normal", "newbie", "expert"]); $result = $languages->combine($level);print_r($result);
Résultat
Illuminate\Support\Collection Object( [items:protected] => Array ( [php] => expert [python] => normal [javascript] => normal [go] => newbie [c#] => newbie [java] => normal [cobol] => newbie [basic] => expert ))
Plutôt simple vous trouvez pas? Il a pris nos 2 tableaux pour nous donner un seul avec en clé les valeurs du premier tableau et en valeur les valeurs du 2e tableau.
Référence
Vous pouvez avoir tous les détails de cette fonction dans la documentation de Laravel
Arthur Monney
@mckenziearts
Fullstack Designer - Laravel & React Developer. Laravel Cameroon Organizer @laravelcm | @shopperlabs