Also verstehe ich das - und Vergleichen/Überprüfen von Werten. Allerdings habe ich herumgemotzt und das Ergebnis für alle meine Tests war die gleichen - einige von denen ich gelernt wurde (a) hat nicht funktioniert oder (b) war inkorrekt.PHP - wenn einzelner Wert gleich mehrere Optionen
Hinweis, ich verwende PHP7. Okay, auf meinen Punkt. Ich war in der Lage, die gleiche Ergebnisprüfung zu erreichen, wenn ein einzelner Wert gleich einer von mehreren Optionen ist ...
Diese funktionieren ... warum? Def nicht wie ich es gelernt habe.
if ($status == 'in-progress' || 'in-review')
// and even
if ($status == ('in-progress' || 'in-review')) // kind of similar to ASP.NET Razor
Ich würde normalerweise die Prüfung wiederholen, etwa so: if($stat == 'a' || $stat == 'b')
oder sogar in_array()
, die im Wesentlichen die gleiche Sache.
Sind die ersten Beispiele korrekt? Wenn nicht, warum funktioniert es? Oder ist das etwas verpönt und nicht geübt - oder vielleicht sogar etwas Neues?
Lesen Sie auf [Typ Jonglieren] (http://php.net/manual/en/language.types.type-juggling.php). 'in-review' ist kein leerer String, also ist es TRUE. Ihre erste if-Anweisung sagt also if ($ status == 'in-progress' || TRUE). Die zweite sagt if ($ status == (true || true)). Typ Jonglieren ist wichtig, um in PHP zu verstehen? –