2016-07-28 3 views
1

Je dois envoyer une notification par courrier électronique à de nombreux utilisateurs. Je boucle à travers et obtenir les utilisateurs email comme ceci:Comment mettre en forme le courrier électronique dans une matrice - Laravel 5.2

$userEmails = $favoriteGuides->map(function($relation){ 
     return $relation->users->email; 
}); 

Et le résultat est le suivant:

Collection {#400 ▼ 
    #items: array:3 [▼ 
    0 => "[email protected]" 
    1 => "[email protected]" 
    2 => "[email protected]" 
.... and so on 
    ] 
} 

J'ai besoin de formater il va dans un tableau afin que je puisse l'envoyer dans un Mail fonction. Il doit être formaté comme ceci:

$emails = ["[email protected]", "[email protected]", "and so on..."]; 

Je le formate dans le résultat que je veux?

J'ai déjà essayé - implode - mais cela ne m'a pas donné le résultat que je voulais.

Répondre

2

Utilisez la méthode toArray():

$userEmails->toArray();

+0

Oui cela a fonctionné. Je vous remercie! – David

0

Vous pouvez utiliser la méthode toArray():

La toArray convertit la collection dans un tableau PHP. Si les valeurs de la collection sont des modèles Eloquent, les modèles seront également convertis en tableaux:

Ainsi, votre code ressemblera à ceci:

$userEmails = $favoriteGuides->map(function($relation){ 
     return $relation->users->email->toArray(); 
}); 
+0

Oui ** toArray() ** fonctionne. Mais votre méthode me donne des erreurs. J'ai essayé la méthode djt et ça marche. Merci bien – David