Continuiamo la nostra carrellata sugli operatori disponibili per un programmatore
PHP riprendendo dagli operatori sui bit.
Operatori sui bit
Gli operatori di questo genere permettono di modificare il valore
di alcuni bit all’interno di numeri interi. Come per gli
operatori visti finora, anche il funzionamento di quelli appartenenti
a questa classe risulta esser molto intutivo.
Sono in tutto 6 e comprendono un operatore unario:
L’operatore NOT, simbolo ~, che setta all’interno
dell’intero restituito come risultato tutti i bit che nell’operando
non erano settati e viceversa.
e cinque operatori binari
L’operatore AND, il cui simbolo è la “E commerciale”
(&), setta all’intero risultante tutti i bit la cui
posizione in entrambi gli operandi è occupata da bit di valore
1.
L’operatore OR, il cui simbolo è il carattere “pipe”
(|), setta all’intero risultante tutti i bit la cui posizione
in almeno uno degli operandi è occupata da bit di valore 1.
L’operatore XOR, simbolo ^, setta all’intero
risultante tutti i bit la cui posizione in almeno uno degli operandi
ma non in entrambi, è occupata da bit di valore 1.
L’operatore di shift a sinistra, simbolo <<
(es. $a<<$b), che ha come effetto quello di assegnare alla
stringa risultante i bit dell’operando a sinistra dell’operatore
fatti scorrere verso sinistra tante volte quanto è il valore dell’operando
a destra dell’operatore (effettuare uno shift verso sinistra
equivale a moltiplicare per due).
L’operatore di shift a destra, simbolo >> (es.
$a>$b), che ha come effetto quello di assegnare alla stringa
risultante i bit dell’operando a sinistra dell’operatore
fatti scorrere verso destra tante volte quanto è il valore dell’operando
a destra dell’operatore (effettuare uno shift verso destra
equivale a dividere per due).
Operatori di confronto
Gli operatori di confronto vengono utilizzati per effettuare la
comparazione tra i valori assunti da due differenti variabili;
sono in numero di nove, di questi otto sono operatori binari,
mentre uno è un operatore ternario. Comprendono:
L’operatore di uguaglianza, simbolo ==, restituisce
TRUE se l’operando di destra ha un valore uguale a quello
di sinistra.
L’operatore di disuguaglianza, simbolo !=, restituisce
TRUE l’operando di destra ha un valore diverso da quello
di sinistra.
L’operatore di identità, simbolo ===, restituisce
TRUE se l’operando di destra ha un valore uguale a quello
di sinistra e sono dello stesso tipo.
L’operatore di non identità, simbolo !==, restituisce
TRUE se l’operando di destra ha un valore diverso da quello
di sinistra o non sono dello stesso tipo.
L’operatore di maggioranza stretta, simbolo >,
restituisce TRUE se l’operando di sinistra è maggiore di
quello di destra.
L’operatore di maggioranza, simbolo >=, restituisce
TRUE se l’operando di sinistra è maggiore o uguale a quello
di destra.
L’operatore di minoranza stretta, simbolo <, restituisce
TRUE se l’operando di sinistra è minore di quello di destra.
L’operatore di minoranza, simbolo <=, restituisce
TRUE se l’operando di sinistra è minore o uguale a quello
di destra.
L’operatore ternario, simbolo “?”, opera
come nel Linguaggio C e in molti altri linguaggi e viene utilizzato
per l’esecuzione condizionata di due diverse espressioni;
per esempio il codice:
espressione1 ? espressione2
: espressione3;
sta ad indicare che se espressione1 è vera bisogna valutare espressione2,
in caso contrario occorre valutare espressione3.
Attenzione: gli operatori di “identità” e “non
identità” sono presenti solo a partire dalla versione 4
di PHP.
Operatori per il controllo degli errori
Questa classe comprende in realtà un solo operatore, il cui simbolo
è @. Quando questo operatore viene preposto ad una qualsiasi espressione
ogni messaggio d’errore generato da quell’espressione
verrà ignorato. Per esempio se lo script contenente il seguente
frammento di codice:
<?php
…
$db = @mysql_connect ("MyHost", "MyUsername",
"MyPassword");
…
?>
Dovesse fallire la connessione al database, nessun messaggio d’errore
comparirebbe sul browser del visitatore del nostro sito.
Se la direttiva track_errors del file php.ini è
settata allora ogni messaggio d’errore generato dall’espressione
verrà salvato nella variabile globale $php_errormsg.
Attenzione: la variabile $php_errormsg verrà
soprascritta ogniqualvolta un nuovo errore verrà generato. Se
ne tenga conto nel caso in cui si abbia la necessità di utilizzarla.
Torna all'indice Generale del corso di Corso di PHP di Software Planet