Sprechen über „die beste Art und Weise“, um zu versuchen brauchen nicht zu vergleichen, ohne Kontext keinen Sinn macht. Generell sollten Sie Code schreiben, um diejenigen zu erreichen:
„leer“ Rückgabewert sollte Sinn Code machen, die verwendet es
Es gibt gemeinsame Fälle, von denen leerer Wert ist für bestimmte nicht-leeren Wert zu wählen.
Zum Beispiel, wenn Sie nach der spezifischen Entität in der Datenbank suchen. Im Erfolgsfall gibt Ihr Code das Objekt zurück, so dass es im Falle einer fehlgeschlagenen Suche offensichtlich keine leere Zeichenfolge sein sollte. Üblicherweise wird in diesem Fall null oder NullObject zurückgegeben.
Wenn Ihr Code im Erfolgsfall mehrere Objekte zurückgibt, sollten Sie im Falle eines Fehlers ein leeres Array/Iterator zurückgeben.
Wenn Ihr Code Zeichenfolgen verwendet, möchten Sie in der Regel zu einem bestimmten Zeitpunkt nicht null zurückgeben.
Der offensichtlichste Fall: Wenn Sie im Erfolgsfall true
zurückgeben, sollten Sie im Fehlerfall keine leere Zeichenfolge zurückgeben.
So, verwenden Sie Common-Sense-Regeln und ein bisschen Logik, um herauszufinden, rechten Rückgabewert.
Code sollte lesbar und gültig sein
hängt auch von Kontext: Wenn es einen Unterschied in Ihrem Fall ist, wenn die Funktion null
zurückgibt, ''
oder false
, Sie zusätzliche Kontrollen der Rückgabewert verwenden soll (mind guten Namen mit für Prüfmethode). Wenn es Ihrem Code egal ist, was darin ist, außer es ist ein Objekt, dann wird if($something)
ausreichen.
Diese Regeln gelten normalerweise für jede Programmiersprache, nicht nur für PHP.
Verwenden Sie '==' zum Vergleichen nicht '=' hier '$ a = 0' – C2486
Es ist schön, nur einen Rückgabetyp zu haben. Wenn Sie das Ergebnis einer Abfrage zurückgeben und das Ergebnis leer ist, geben Sie ein leeres Array zurück. – zennin