2017-05-21 4 views
1

Ich erhalte ein einzelnes Modell. Dieses Modell kann aus zwei Arten bestehen. Sprich Entweder Es kann App\Models\UserORApp\Models\ResourceVergleichen von Typen Laravel

sein Ich möchte überprüfen, welche Art es ist? Zur Zeit verwende ich instanceof aber kein Glück.

public function someFunction($result) 
{ 
    //result can be either User model or Resource model. 

    if($result instanceof App\Models\User) 
    { 
     //do soemthing for user. 
    } 
    else{ 
     //do something for resource. 
    } 
} 
+0

Wenn Sie ein 'dd ($ result)' tun, was bekommen Sie? –

+0

@ Bara'ayyash, ist es eines der beredten Modell (Benutzer OR-Ressource). Btw, überprüfen Sie die Antwort von Sandeesh, das war mein Fehler 'typhing 'Klassenmodell Name. –

Antwort

0

Der Pfad zur Klasse sollte \App\Models\User lauten.

use App\Models\User; 

public function someFunction($result) 
{ 
    //result can be either User model or Resource model. 

    if($result instanceof User) { 
     //do something for user. 
    } else { 
     //do something for resource. 
    } 
} 
+1

Dank @Sandesh, es funktioniert. Fehler mit 'typinghinting' Modell. Danke noch einmal. –

Verwandte Themen