/ //

Operatori logici e di confronto in PHP - GM Multimedia

Vai ai contenuti

Menu principale:

Operatori logici e di confronto in PHP

Guida PHP



         Gli operatori logici e di confronto sono gli ultimi gruppi di operatori del PHP che verranno analizzati in questa trattazione e che possono essere utilizzati all’interno delle espressioni.

Operatori logici
         Gli operatori logici consentono di determinare se la relazione tra due o più espressioni è vera (TRUE) o falsa (FALSE). L’unico operatore che fa eccezione a questa regola è l’operatore not che si occupa di negare il valore di un’espressione. Vediamo insieme quali sono gli operatori logici supportati dal PHP associando ad essi alcuni esempi del loro funzionamento:
Operatore
NomeEsempioRisultato Operazione
and oppure &&
and$x && $y
Vera se e solo se entrambi i valori sono veri
or oppure ||
or$x || $y
Vera se uno dei due valori è vero
xorxor$x xor $y
Vera se uno dei due valori è vero e l’altro è falso
!not!$x
Vera quando il singolo operando utilizzato è falso o viceversa
         Come analizzato nelle lezioni precedenti, PHP, a differenza ad esempio del C, supporta il tipo di dato booleano, quindi il risultato di un’espressione tra operatori logici sarà a sua volta un booleano.
				true && true;   //true
				true && false;  //false
				false && true;  //false
				false && false;  //false
				true || true;  //true
				true || false;  //true
				false || true;  //true
				false || false;  //false
				true xor true;  //false
				true xor false;  //true
				false xor true;  //true
				false xor false;  //false
				!true;  //false
				!false;  //true
         Nel caso in cui una delle espressioni sia intera, float o stringa, PHP si occupa di effettuare il casting automatico. Nel caso di valori maggiori di “1”, l’espressione viene interpretata come valore “1”; a tel proposito è possibile analizzare il seguente esempio:
				true && true;   //true
				1 && true;  //true
				2 && true;  //true
				"2" && true;  //true
				0 && true;  //false
         Nel caso in cui un’espressione sia un array, invece, essa viene valutata come vera se e soltanto se l’array non è vuoto, altrimenti è falsa:
				array() && true;  //false
				array(1, 2, 3) && true;  //true

Operatori di confronto
         Gli operatori di confronto consentono di determinare il valore di due espressioni in base al confronto tra i loro valori.
Operatore
NomeEsempioRisultato Operazione
==Uguale5 == 5
Vera se entrambi i valori sono uguali
===Identico5 === 5Vera se entrambi i valori sono uguali e dello stesso tipo
!=Non uguale4 != 5Vera se i due valori non sono uguali
!==Non identico4 !== ‘4’ Vera se i due valori sono diversi o se i tipi sono diversi
>Maggiore5 > 4Vera se il valore di sinistra è maggiore di quello di destra
<Minore4 < 5Vera se il valore di sinistra è minore di quello di destra
>=Maggiore e uguale5 >= 4Vera se il valore di sinistra è maggiore o uguale di quello di destra
<=Minore e uguale4 <=5Vera se il valore di sinistra è minore o uguale a quello di destra
         Alcuni esempi relativi a tali risultati potrebbero essere i seguenti:
				5 == 5;  //true
				5 === '5';  //false
				5 !== '5';  //true
				'10' > 6;  //true
				5 > '0';  //true
         I confronti possono essere effettuati anche con altri tipi di dato che non siano numerici, come ad esempio le stringhe. Nel caso delle stringhe il confronto viene fatto in base all’ordine alfabetico dei caratteri seguendo l’ordine:
  • caratteri maiuscoli;
  • caratteri minuscoli:
  • cifre.
Motivo per il quale si avrà:

				$a = 'MAIUSCOLO';
				$b = 'minuscolo';
				$c = '10 cifra';
				$a > $b;  //vero perché la stringa inizia per un carattere maiuscolo
				$b > $c;  //vero perché un carattere minuscolo ha priorità su una cifra
				$c > $a;  //false perché un carattere maiuscolo ha priorità
				'B' > 'A'; //vero perché la A viene prima della B
				'm' > 'N'; //falso perché una lettera maiuscola ha priorità rispetto ad una minuscola
Visitatori online:
Sei il nostro visitatore n°:
© - Copyright 2015. - Tutti i diritti riservati - G.M. Multimedia
Torna ai contenuti | Torna al menu