Beim Scrollen durch den Code könnten Sie auf so etwas stoßen, wenn (1 === $var).
Was könnte möglicherweise der Unterschied zwischen if ($var === 1) und if (1 === $var) sein?
Es muss bekannt sein, dass es keinen Unterschied in der Funktionalität zwischen den beiden Ansätzen gibt. Warum zum Teufel sollten Sie also beim Schreiben von Bedingungen eine Yoda-Bedingung verwenden?
Beim Schreiben einer if-Anweisung kann es vorkommen, dass Sie einige Gleichheitszeichen übersehen haben. Das Problem ist, wenn Sie am Ende so etwas erhalten:
if ($var = 1) { // Instead of $var === 1 // Do something }
Was passiert hier?
Es wurde kein Fehler erkannt, da dieser Code gültig ist. Das Problem ist, dass es nicht wie vorgesehen funktioniert: Der Variablen wirdder Wert 1 zugewiesen, es wird kein Vergleich durchgeführt und es ist immer wahr.
Hier ist die Yoda-Bedingung nützlich; im gleichen Fall erhalten wir:
if (1 = $var) { // Instead of 1 === $var // Do something }
Hier haben wir auch einige Entsprechungen übersehen, aber der Code ist ungültig und dieses Mal erhalten wir eine Fehlermeldung, da dieser ungültig ist.
Wir haben gesehen, dass der einzige Zweck der Yoda-Bedingung darin besteht, versehentliche Zuweisungen zu vermeiden, was auf Kosten einer schlechteren Lesbarkeit geht.
Sollten Sie es verwenden? Warum nicht ! Beachten Sie jedoch, dass Ihr Code dadurch in keiner Weise verbessert wird.
Außerdem kann es hilfreich sein, auf einer Party mit Entwicklern flexibel zu sein (was übrigens nicht so oft vorkommt).
Vielen Dank für Ihre Lektüre! ?
Das obige ist der detaillierte Inhalt vonWas ist die Yoda-Bedingung in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!