Ecco un punto fondamentale della programmazione imperativa. Se abbinati alle strutture di controllo e agli operatori logici vi permettono di modificare il flusso del programma cambiando il suo comportamento in base ai valori assunti dalle variabili.

Questi operatori binari eseguono un confronto tra i due operandi e ritornano vero o falso a seconda che una data condizione.
Esistono operatori di maggiore, minore, diverso da e uguaglianza.

Proprio su quest’ultimo però ci dobbiamo soffermare un’attimo per indicare una particolarità del PHP.
Se usiamo l’operatore di uguaglianza con una stringa ’10’ e un intero 10 questo ci ritornerà TRUE. Se intendiamo che PHP tenga in considerazione anche il tipo di variabile dobbiamo usare l’operatore di identicità.

<?php
 
function b2s($a)
{
  return ($a) ? "TRUE\n" : "FALSE\n";
}
 
$a = 10;
$b = '10';
 
/* Operatori di confronto */
 
$x = $a == $b; // Uguale "=="
echo b2s($x);  // TRUE
 
$x = $a === $b; // Indentico "==="
echo b2s($x);   // FALSE
 
$x = $a != $b; // Diverso "!="
echo b2s($x);  // FALSE
 
$x = $a <> $b; // Diverso "<>"
echo b2s($x);  // FALSE
 
$x = $a !== $b; // Non Indentico "!=="
echo b2s($x);   // TRUE
 
$x = $a <= $b; // Minore o uguale "<="
echo b2s($x);  // TRUE
 
$x = $a >= $b; // Maggiore o uguale ">="
echo b2s($x);  // TRUE
 
$x = $a > $b; // Maggiore ">"
echo b2s($x); // FALSE
 
$x = $a < $b; // Minore "<"
echo b2s($x); // FALSE
 
?>

vicius