409 Stimmen

Laravel Überprüfen, ob ein Datensatz vorhanden ist

Ich bin neu bei Laravel. Wie finde ich heraus, ob ein Datensatz vorhanden ist?

$user = User::where('email', '=', Input::get('email'));

Was kann ich hier tun, um zu sehen, ob $user einen Datensatz hat?

847voto

lukasgeiter Punkte 145479

Es kommt darauf an, ob Sie anschließend mit dem Benutzer arbeiten möchten oder nur überprüfen, ob er existiert.

Wenn Sie das Benutzerobjekt verwenden möchten, falls es existiert:

$user = User::where('email', '=', Input::get('email'))->first();
if ($user === null) {
   // Benutzer existiert nicht
}

Und wenn Sie nur überprüfen möchten

if (User::where('email', '=', Input::get('email'))->count() > 0) {
   // Benutzer gefunden
}

Oder noch besser

if (User::where('email', '=', Input::get('email'))->exists()) {
   // Benutzer gefunden
}

85voto

lucidlogic Punkte 1814
if (User::where('email', Input::get('email'))->exists()) {
    // existiert
}

48voto

In Laravel eloquent gibt es standardmäßig die Methode exists(), siehe folgendes Beispiel.

if (User::where('id', $user_id )->exists()) {
    // dein Code...
}

32voto

tapos ghosh Punkte 1924

Eine der besten Lösungen ist die Verwendung der Methode firstOrNew oder firstOrCreate. Die Dokumentation enthält weitere Details zu beiden.

21voto

Nabil Punkte 215
if($user->isEmpty()){
    // hat keine Datensätze
}

Eloquent verwendet Sammlungen. Siehe den folgenden Link: https://laravel.com/docs/5.4/eloquent-collections

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X