Comment utiliser les opérateurs de comparaison PHP pour comparer différents types

伊谢尔伦
Libérer: 2023-03-10 22:40:01
original
1631 Les gens l'ont consulté

1. Opérateurs de comparaison PHP

$a == $b est égal à VRAI si $a est égal à $b.
$a === $b est congruent VRAI si $a est égal à $b et que leurs types sont également les mêmes. (Introduit dans PHP 4)
$a != $b n'est pas égal à TRUE si $a n'est pas égal à $b.
$a <> $b n'est pas égal à TRUE si $a n'est pas égal à $b.
$a !== $b n'est pas congruent VRAI si $a n'est pas égal à $b, ou si leurs types sont différents. (PHP 4 uniquement)
$a < $b est inférieur à TRUE si $a est strictement inférieur à $b.
$a > $b est supérieur à TRUE si $a est strictement $b.
$a <= $b est inférieur ou égal à VRAI si $a est inférieur ou égal à $b.
$a >= $b est supérieur ou égal à VRAI si $a est supérieur ou égal à $b.

Si l'opérateur de comparaison PHP compare un entier à une chaîne, la chaîne est convertie en entier. Si vous comparez deux chaînes numériques, comparez-les sous forme d’entiers. Cette règle s'applique également aux instructions switch.

<?php  
var_dump(0 == "a"); // 0 == 0 -> true  
var_dump("1" == "01"); // 1 == 1 -> true  
switch ("a") {  
case 0:  
echo "0";  
break;  
case "a": // never reached because "a" is already matched with 0  
echo "a";  
break;  
}  
?>
Copier après la connexion

Si les opérandes sont de types différents, ils sont comparés (dans l'ordre) selon le tableau suivant.

2. Les opérateurs de comparaison PHP comparent différents types

null ou chaîne de caractères Convertir NULL en "" pour une comparaison numérique ou lexicale
bool ou null Tout autre type est converti en bool, FALSE < ; TRUE
Les classes intégrées aux objets objets peuvent définir leurs propres comparaisons. Les propriétés d'une même classe ne peuvent pas être comparées de la même manière (en PHP 4, il a sa propre description <🎜). >

string , ressource ou nombre chaîne, ressource ou nombre Convertir les chaînes et les ressources en nombres, comparés par les mathématiques ordinaires

array array Un tableau avec moins de membres est plus petit si la clé de l'opérande 1 n'existe pas dans l'opérande 2 Alors les tableaux ne peuvent pas être comparés, sinon les valeurs sont comparées une par une

tout autre type de tableau est toujours plus grand

tout autre type d'objet est toujours plus grand. >

L'un des opérateurs de comparaison PHP
<?php  
// 数组是用标准比较运算符这样比较的  
function standard_array_compare($op1, $op2)  
{  
if (count($op1) < count($op2)) {  
return -1; // $op1 < $op2  
} elseif (count($op1) > count($op2)) {  
return 1; // $op1 > $op2  
}  
foreach ($op1 as $key => $val) {  
if (!array_key_exists($key, $op2)) {  
return null; // uncomparable  
} elseif ($val < $op2[$key]) {  
return -1;  
} elseif ($val > $op2[$key]) {  
return 1;  
}  
}  
return 0; // $op1 == $op2  
}  
?>
Copier après la connexion
Opérateur ternaire

Opérateur Un autre opérateur conditionnel est l'opérateur "?:" (ou ternaire).

L'expression (expr1) ? (expr2) : (expr3) a la valeur expr2 lorsque expr1 est évaluée à VRAI et expr3 lorsque expr1 est évaluée à FAUX.
<?php  
// Example usage for: Ternary Operator  
$action = (empty($_POST[&#39;action&#39;])) ? &#39;default&#39; : $_POST[&#39;action&#39;];  
// The above is identical to this if/else statement  
if (empty($_POST[&#39;action&#39;])) {  
$action = &#39;default&#39;;  
} else {  
$action = $_POST[&#39;action&#39;];  
}  
?>
Copier après la connexion

Remarque : Notez que l'opérateur ternaire est une instruction, donc son évaluation n'est pas une variable, mais le résultat de l'instruction. Ceci est important si vous souhaitez renvoyer une variable par référence. L'instruction return $var == 42 ? $a : $b; dans une fonction qui renvoie par référence ne fonctionnera pas, et une future version de PHP émettra un avertissement à ce sujet.

Identifier les opérateurs pour mettre en œuvre des comparaisons logiques

a. Relations multiples qui sont directement OU (entrée utilisateur)

b. >
time>12
time=9
Copier après la connexion

c. Opérateurs de comparaison disponibles (>, <, <=, =, !=)

time>12&&time<25
Copier après la connexion
d L'objet à comparer doit être déchargé devant.

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!