Espressioni, operandi e operatori

Una espressione é composta da operandi e operatori.

Gli operandi in PHP possono essere di tipo intero, reale, stringa, booleano.

I valori interi (integer) possono essere espressi anche in base 8 (facendoli precedere dallo 0) o in base 16 (facendoli precedere da 0x).

Nota: La conversione dal sistema decimale a quello ottale o esadecimale é si ottiene utilizzando le funzioni decoct() e dechex()

Per i numeri reali (double) si utilizza la notazione anglosasone che prevede il punto in luogo della virgola.

I valori booleani (bool) possono essere TRUE o FALSE. É importante ricordare che:

Per indicare la totale assenza di valore e tipo per una variabile si utilizza la parola chiave NULL.

Le stringhe (string) sono sequenze di caratteri qualsiasi delimitate da apici singoli o da virgolette. Vediamo con alcuni esempi quando e come scegliere se delimitare la stringa con l'apice singolo o con le virgolette:

echo('IISS "A. RIGHI"');
Visualizza la frase IISS "A. RIGHI" lasciando le virgolette come parte del messaggio. Il codice
$scuola="A. RIGHI";
echo ('IISS $scuola');
Produce l'output IISS $scuola inserendo il nome della variabile nel messaggio, mentre
$scuola="A. RIGHI";
echo ("IISS $scuola");

Produce l'output IISS A. RIGHI inserendo il contenuto della variabile nel messaggio. Il simbolo \ (backslash) consente di inserire i caratteri di escape all'interno di una stringa. Apici('), virgolette("), riorno a capo, tabulazione, dollaro ($) e altri caratteri sono utilizzati dal PHP per scopi particolari e ad essi è associato un significato specifico. Per evitare che vengano interpretati è necessario, all'interno di una stringa, farli precedere dal caratte di escape \. Quindi " diventa \", $ diventa \$, \ diventa \\ ecc... Per caratteri non visualiizabili si può ricorrere alla seguente tabella:

Caratteri di escape Significato
\n Ritorno a capo e nuova riga.
\r A capo
\t Tabulazione (TAB)
da \xOO a \xFF Caratteri esadecimali

Sulle stringhe sono definite diverse funzioni. Tra queste le più importanti sono:

Funzione Descrizione
strlen(<Stringa>) Restituisce un numero intero corrispondente alla lunghzza della stringa.
trim(<Stringa>) Restituisce la stessa stringa senza gli eventuali spazi all'inizio e alla fine.
ltrim(<Stringa>) Come la funzione precedente ma elimina solo gli eventuali spazi a sinistra
rtrim(<Stringa>) Come le funzioni precedenti ma elimina solo gli eventuali spazi a destra
substr(<Stringa>,<Intero>[,<Intero>]) Restituisce una sottostringa di quella passato come parametro, a partire dalla posizione indicata dal primo parametro intero sino alla fine della stringa o per un numero di caratteri pari al valore eventualmente specificato come secondo parametro intero
str_replace(<Stringa>,<Stringa>[,<Stringa>])
str_ireplace(<Stringa>,<Stringa>[,<Stringa>])
Cerca la stringa passata come primo parametro all'interno della stringa passata come terzo parametro e la sostituisce con la stringa passata come secondo parametro. Il terzo parametro risulterà modificato. str_ireplace() non tiene conto della distinzione tra maiuscole e minuscole
strtolower(<Stringa>) Restituisce il parametro modificato con tutte le lettere convertite in minuscolo
strtoupper(<Stringa>) Restituisce il parametro modificato con tutte le lettere convertite in maiuscolo
ucfirst(<Stringa>) Restituisce il parametro modificato con l'iniziale della prima parola convertita in maiuscolo
ucwords(<Stringa>) Restituisce il parametro modificato con le lettere iniziali di tutte le parole convertite in maiuscolo

Per poter manipolare le variabili facciamo uso di operatori che possiamo dividere in:

Operatore di assegnamento. É il simbolo = che si usa semplicemente cosí:
	$x = "Ciao a tutti" 
	$y = 123 
	$z = 12.34 
Operatori aritmetici. Ad esempio:
	$x = 12 + 5;
	$y = 123.45-12-1;
	$p = $x * $y;
	$q = $y / 4;
	$r = $x % 5;
E' opportuno ricordare che il decremento e il decremento di una unitá possono essere realizzati con gli operatori: Quindi:
	$i++;
Incrementa di 1 la variabile $i e, similmente,
	$i--;
decrementa di 1 la variabile $i;

Tutti gli operatori aritmetici utilizzati per modificare il valore di una variabile partendo dal valore corrente possono essere compattati con l'operatore di assegnamento come nei seguenti esempi:

$X = $X + $Z; può essere scritto come $X += $Z;

$X = $X - $Z; può essere scritto come $X -= $Z;

$X = $X * 4; può essere scritto come $X *= 4;

$X = $X / ($Z+2); può essere scritto come $X /= $Z+2;

$P = $P % 2; può essere scritto come $X %= $Z+2;

$S = $S . "Ok" può essere scritto come $S .= "Ok"

L'ultimo esempio é mostra l'uso del punto (.) che é l'operatore di concatenamento tra stringhe.

Per effettuare confronti tra i valori delle variabili o di espressioni si usano i seguenti operatori relazionali:

Vediamo un esempio:
	$a = 3; $b = 3.0; $c = 8;
	$a == $b; 	// restituisce TRUE perché i valori sono uguali
	$a === $b; 	// restituisce FALSE perché il tipo é diverso
	$a >= $c; 	// restituisce FALSE perché $a é minore di $c
In PHP è anche possibile fare il confronto tra valori numerici e stringhe. In questo caso viene assegnato un equivalente numerico alla stringa secondo i seguenti criteri: Qundi il codice
	$X = "3 erre";
	$Y = 2;
	$B = ($X == $Y)	
assegna a $B il valore TRUE.

Nella costruzione delle espresioni booleane, oltre agli operatori relazionali, concorrono i seguenti operatori logici:

Operatore Simbolo Significato
or OR oppure || Restituisce TRUE se almeno uno dei due operandi è TRUE. Restituisce FALSE se sono entrambe FALSE.
and AND oppure && Retstituisce TRUE se entrambe gli operandi sono TRUE, altrimenti retituisce FALSE.
xor XOR Restituisce TRUE se gli operandi sono uno FALSE e l'altro TRUE, altrimenti restituisce FALSE.
not ! Un solo operatore. Restituisce FALSE se l'operatore é TRUE e viceversa.
Scrivi email per il tutor dei corsi
Scrivi email per l'amministratore del sito
Torna all'indice del modulo

Ultima modifica: