Maison >développement back-end >Problème PHP >Pourquoi === est-il plus rapide que == ?
Les opérateurs de comparaison == (opérateur d'égalité) et === (opérateur d'identité) sont utilisés pour comparer deux valeurs. Ils sont également connus sous le nom d'opérateurs égaux lâches (==) et égaux stricts (===).
符号 | 名称 | 例子 | 输出结果 |
---|---|---|---|
== | 等于 | $a == $b | 忽略类型,如果 $a 等于 $b 则为 TRUE |
=== | 恒等于 | $a === $b | 如果 $a 等于 $b,并且类型相同则为 TRUE |
Opérateurs PHP Il existe de nombreux opérateurs en PHP, mais les opérateurs == et === effectuent des tâches similaires de manière stricte ou arbitraire.
L'opération d'égalité == convertira temporairement le type de données lors de la comparaison de deux valeurs, tandis que === (opérateur identique) n'a pas besoin d'effectuer de conversion de type, donc le montant du calcul est réduit et la vitesse est plus rapide.
Cas 1 :
<?php // 0 == 0 -> 类型相同返回 true // 转换完成,然后 // 检查是否相等 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"); // 0 === "a" -> 这种情况为 false // 转换不仅完成 // 还检查是否存在 // 是否相等 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 "In first case"; break; // 永远不会匹配 "a" 选项 // 因为 switch 使用的是 == case "a": echo "In sceond case"; break; } ?>
Sortie :
bool(true)
bool(true)
bool(true)
bool(true)
bool(false)
bool(false)
bool(false)
bool(false)
Dans le premier cas
Cas 2 :
<?php // TRUE - 以下表达式等同于 (bool)1 == TRUE var_dump(1 == TRUE); // TRUE - 以下表达式等同于 (bool)0 == FALSE var_dump(0 == FALSE); // FALSE - 1 不全等于 TRUE // 1 是整形, TRUE 是布尔型 var_dump(1 === TRUE); // FALSE - 0 不全等于 FALSE // 0 是整形, FALSE 是布尔型 var_dump(0 === FALSE); ?>
Sortie :
bool(true)
bool(true)
bool(false)
bool(false)
Remarque : === l'opérateur 'la comparaison de type est relativement sûre', ne retournera VRAI que lorsque deux valeurs ont le même type et la même valeur, utilisez = = renverra VRAI si les valeurs sont égales.
Tutoriel recommandé : "Tutoriel PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!