Heim  >  Artikel  >  Backend-Entwicklung  >  Warum ist der Operator === in PHP schneller als ==?

Warum ist der Operator === in PHP schneller als ==?

藏色散人
藏色散人Original
2021-08-30 10:16:553484Durchsuche

Im vorherigen Artikel „Lassen Sie mich Ihnen sagen, warum require_once() in PHP nicht einfach zu verwenden ist! 》Ich habe Ihnen die Gründe vorgestellt, warum require_once() in PHP nicht einfach zu verwenden ist. Interessierte Freunde können es lesen und herausfinden.

Dann wird Ihnen dieser Artikel vorstellen ===in PHP >Warum ist der Operator schneller als =====运算符为什么比==

PHP中的===和==运算符,这两个运算符属于PHP中的比较运算符。

===运算符称为绝对等于==运算符称为等于

语法示例:

$a == $b,如果在类型转换后 $a 等于 $b,则为 TRUE;

$a === $b?

    Die ===- und ==-Operatoren in PHP, diese beiden Operatoren sind Vergleichsoperatoren in PHP.
  • Der ===-Operator heißt absolute equal, und der ==-Operator heißt equal.

  • Syntaxbeispiel:
  • $a == $b, TRUE, wenn $a nach der Typkonvertierung gleich $b ist;

  • $a === $bcode>, TRUE, wenn $a gleich $b ist und beide vom gleichen Typ sind;

Wenn die Typen der Operanden unterschiedlich sind, führen == und === zu unterschiedlichen Ergebnissen. In diesem Fall variiert die Geschwindigkeit des Operators, da == eine Typkonvertierung durchführt und dann vergleicht.

Wenn die Operanden vom gleichen Typ sind, führen == und === zum gleichen Ergebnis. In diesem Fall ist die Geschwindigkeit der beiden Operatoren nahezu identisch, da keiner der Operatoren eine Typkonvertierung durchführt.

==-Operator konvertiert vorübergehend den Datentyp, um zu sehen, ob sein Wert einem anderen Operanden entspricht, während === keine Typkonvertierung erfordert und daher weniger Arbeit leistet, was ihn schneller macht als ==-Operator.

Codebeispiel 1:

<?php


var_dump(0 == "a");

// 1 == 1 -> true
var_dump("1" == "01");

// 10 == 10 -> true
var_dump("10" == "1e1");

// 100 == 100 -> true
var_dump(100 == "1e2");


var_dump(0 === "a");

// "1" === "01" -> false
var_dump("1" === "01");

// "10" === "1e1" -> false
var_dump("10" === "1e1");

// 100 == "1e2" -> false
var_dump(100 === "1e2");

switch ("a") {
    case 0:
        echo "第一种情况";
        break;

    case "a":
        echo "第二种情况";
        break;
}

Ausgabe:

boolean true
boolean true
boolean true
boolean true
boolean false
boolean false
boolean false
boolean false
第一种情况
Codebeispiel 2:

🎜🎜
<?php

var_dump(1 == TRUE);

var_dump(0 == FALSE);

var_dump(1 === TRUE);

var_dump(0 === FALSE);
🎜Ausgabe: 🎜
boolean true
boolean true
boolean false
boolean false
🎜Hinweis: Der Operator === führt nur einen „typsicheren Vergleich“ durch wenn zwei Es wird nur „true“ zurückgegeben, wenn die Operanden denselben Typ und Wert haben, und Sie können == verwenden, wenn Sie nur Werte vergleichen. 🎜🎜Abschließend möchte ich jedem das neueste und umfassendste „🎜PHP-Video-Tutorial🎜“ empfehlen ~ Kommen Sie und lernen Sie! 🎜

Das obige ist der detaillierte Inhalt vonWarum ist der Operator === in PHP schneller als ==?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn