/ //

Operatori aritmetici di PHP - GM Multimedia

Vai ai contenuti

Menu principale:

Operatori aritmetici di PHP

Guida PHP
         Nella lezione relativa alle espressioni abbiamo introdotto l’operatore di incremento ++ che aumenta di un’unità il valore della variabile a cui viene associato. Questo operatore è soltanto uno tra quelli messi a disposizione da PHP per effettuare operazioni aritmetiche. Vediamo insieme nel dettaglio quali sono gli altri e qual’è il loro funzionamento.
Iniziamo ovviamente dai più semplici, quelli più intuitivi che sicuramente già conosciamo:
				$a = 1 + 1; // operatore di somma
				$b = 1 - 1; // operatore di sottrazione
				$c = 1 * 1; // operatore di moltiplicazione
				$d = 2 / 1; // operatore di divisione
         Oltre alle quattro semplici operazioni matematiche precedentemente descritte abbiamo a disposizione anche l’operatore modulo, il quale restituisce il resto di una divisione, come nell’esempio seguente:
				$e = 5 % 2; // 5 diviso 2 = 2 con il resto di 1 => $e = 1
				// L’operatore modulo è spesso utilizzato per 
				// determinare se un valore è pari o dispari:
				$e = 5;
				if(($e % 2) == 0) {
				    echo "5 è pari";
				else {
				    echo "5 è dispari";
				}
         In questo caso la condizione stamperà a schermo 5 è dispari dato che il resto dell’operazione è 1 e non 0. La condizione appena proposta all’interno dell’ if è un operatore booleano che tratteremo approfonditamente nella prossima lezione. Per ora utilizziamo invece l’esempio anche per introdurre un’altra regola di priorità: le parentesi (). Queste ultime modificano la priorità delle operazioni in un’espressione proprio come accade nella matematica, valutando prima il valore in esse contenuto e poi il resto dell’espressione. Nel nostro caso viene prima valutato il valore del modulo e poi eseguito il resto dell’espressione.
         Tornando agli operatori aritmetici introdotti in questa lezione, essi possono essere utilizzati non solo tra valori scalari ma anche con variabili e funzioni, come già mostrato nella lezione delle espressioni:
				$a = 1 + 1;
				$b = 4 - 2;
				$b = $b + $a; // 2 + 2 = 4
         Nell’esempio appena visto possiamo notare la situazione in cui il risultato di un’espressione viene assegnato come risultato alla variabile stessa. La variabile $b, quindi, viene modificata sommando il suo valore iniziale al valore di $a. La stessa espressione può essere riscritta utilizzando gli operatori di assegnazione combinati:
				$b += $a; // equivale a $b = $b + $a
         Tali operatori possono essere utilizzati con tutte le operazioni aritmetiche finora descritte:
				$b += $a; // $b = $b + $a
				$b -= $a; // $b = $b - $a
				$b *= $a; // $b = $b * $a
				$b /= $a; // $b = $b / $a
				$b %= $a; // $b = $b % $a
Gli ultimi due operatori aritmetici li abbiamo già analizzati ad inizio lezione e in quella precedente, stiamo parlando degli operatori di incremento e decremento.
				$i = 0;
				++$i; // incrementa di 1 la variabile $i
				$i++; // incrementa di 1 la variabile $i
				--$i; // decrementa di 1 la variabile $i
				$i--; // decrementa di 1 la variabile $i
         La differenza della posizione dell’operatore determina la priorità con cui viene eseguito l’incremento o il decremento. Se si trova a sinistra viene eseguita prima di valutare il resto dell’espressione; se si trova a destra viene eseguita dopo aver valutato l’espressione. Vediamo alcuni esempi a riguardo:
				$i = 5;
				if( ++$i == 6 ) {
				    echo 'La variabile $i è uguale a 6';
				} else {
				    echo 'La variabile $i è diversa da 6';
				}
				$i = 5;
				if( $i == 6 ) {
				    echo 'La variabile $i è uguale a 6';
				} else {
				    echo 'La variabile $i è diversa da 6';
				}
				++$i;
         I due costrutti condizionali appena visti sembrano del tutto identici, il risultato però è diverso in base alla posizione dell’operatore di incremento. Nel primo caso la variabile viene incrementata prima di verificare che essa sia uguale a 6, quindi verrà eseguito il codice nel primo ramo della if, quello corrispondente alla condizione vera. Nel secondo caso, invece, la variabile viene incrementata al termine dell’espressione quindi verrà valutato 5 == 6 che è falso e quindi verrà eseguito il codice nel ramo dell’else.
Visitatori online:
Sei il nostro visitatore n°:
© - Copyright 2015. - Tutti i diritti riservati - G.M. Multimedia
Torna ai contenuti | Torna al menu