2009-08-19 11 views
12

Ich sahWas bedeutet! == Vergleichsoperator in PHP?

if($output !== false){ 
} 

Es ist ein Ausrufezeichen mit zwei Zeichen entspricht.

Es funktioniert fast wie nicht gleich. Hat es eine zusätzliche Bedeutung?

+0

siehe http://stackoverflow.com/questions/80646/how-do-the-equality-and-identity-comparison-operators-differ – VolkerK

+0

und http://stackoverflow.com/questions/1139154/is-there -a-Differenz-zwischen-und-in-php – VolkerK

+0

mögliches Duplikat von [Referenz - Was bedeutet dieses Symbol in PHP?] (http://stackoverflow.com/questions/3737139/reference-what-does-this-symbol -mein-in-php) – kapa

Antwort

31

Sie sind die strikten Gleichheitsoperatoren (===,! ==), die beiden Operanden müssen denselben Typ und Wert haben, damit das Ergebnis wahr ist.

Zum Beispiel:

var_dump(0 == "0"); // true 
var_dump("1" == "01"); // true 
var_dump("1" == true); // true 

var_dump(0 === "0"); // false 
var_dump("1" === "01"); // false 
var_dump("1" === true); // false 

Weitere Informationen:

5

PHP === Operator ermöglicht es Ihnen, sowohl für die Gleichstellung und die Art zu vergleichen oder Testvariablen. So

! == (nicht ===)

2

ja, es überprüft auch, dass die beiden Werte vom gleichen Typ sind. Wenn $ output 0 ist, gibt! == den Wert false zurück, da es sich nicht um Zahlen oder boolesche Werte handelt.

4

!== prüft sowohl den Typ der Variablen als auch den Wert. So zum Beispiel,

$a = 1; 
$b = '1'; 
if ($a != $b) echo 'hello'; 
if ($a !== $b) echo 'world'; 

ausgeben wird nur ‚Welt‘, wie $a eine ganze Zahl und $b ist eine Zeichenfolge.

Sie sollten die Handbuchseite auf PHP operators überprüfen, es hat einige gute Erklärungen.