Beredte Sammlung
Einleitung
Jedoch sind Sammlungen leistungsfähiger als Arrays und intuitiver Die Schnittstelle stellt Map/Reduce und andere Operationen bereit, die in einer Kette aufgerufen werden können. Entfernen wir beispielsweise alle inaktiven Benutzer und sammeln wir die Namen der verbleibenden Benutzer:
EinführungVerfügbare MethodenEloquent Alle zurückgegebenen Mehrfachergebnismengen sind Instanzen von -Objekten, einschließlich der Ergebnisse, die über die
-Methode abgerufen oder durch den Zugriff auf Beziehungen erhalten wurden. Das Sammlungsobjekt von Eloquent erbt die Basisklasse der Sammlung von Laravel, sodass es natürlich auch Dutzende von Methoden erbt, die das zugrunde liegende Array von Eloquent-Modellen elegant verarbeiten können. Außerdem können alle Sammlungen als Iteratoren verwendet werden, und Sie können sie wie ein einfaches PHP-Array durchlaufen:$users = App\User::where('active', 1)->get();
foreach ($users as $user) {
echo $user->name;
}
Jedoch sind Sammlungen leistungsfähiger als Arrays und intuitiver Die Schnittstelle stellt Map/Reduce und andere Operationen bereit, die in einer Kette aufgerufen werden können. Entfernen wir beispielsweise alle inaktiven Benutzer und sammeln wir die Namen der verbleibenden Benutzer: $users = App\User::all(); $names = $users->reject(function ($user) { return $user->active === false; })->map(function ($user) { return $user->name; });
IlluminateDatabaseEloquentCollection
get
{note} Die meisten Eloquent-Erfassungsmethoden geben neue Eloquent-Erfassungsinstanzen zurück, aber , < Außer 🎜 >, ,
,und
Methoden, die eine Sammlungsbasisklasse zurückgeben Beispiel. Wenn die von der-Operation zurückgegebene Sammlung keine Eloquent-Modelle enthält, wird sie ebenfalls automatisch in eine Sammlungsbasisklasse konvertiert.Verfügbare Methoden
pluck
keys
zip
collapse
flatten
flip
map