Lezioni di PHP - Lezione 6 - Operatori PHP
Abbiamo già imparato a conoscere le variabili numeriche e stringhe, e sappiamo che le variabili numeriche possono essere di vari tipi: intere, decimali e logiche. Ora è il momento di imparare a lavorare con queste variabili: modificarle, combinarle e manipolarle con gli operatori PHP.
Le tabelle seguenti mostrano l’uso dei vari operatori.
Operatori aritmetici PHP
Operatore PHP | Descrizione | Esempio | Risultato |
---|---|---|---|
+ | Addizione | x=2 x+2 |
4 |
- | Sottrazione | x=2 5-x |
3 |
* | Moltiplicazione | x=4 x*5 |
20 |
/ | Divisione | 15/5 5/2 |
3 2.5 |
% | Resto della divisione (modulo) | 5%2 10%8 10%2 |
1 2 0 |
++ | Incremento (aumenta di 1) | x=5 x++ |
x=6 |
-- | Decremento (diminuisce di 1) | x=5 x-- |
x=4 |
Addizione in PHP
<?php $x = 1; $y = 2; $z = $x + $y; print $z; ?>
Il risultato sarà 3. Tutto molto semplice.
Sottrazione in PHP
<?php $x = 2; $y = 6; $z = $y - $x; print $z; ?>
Risultato: 4.
Moltiplicazione in PHP
<?php $x = 3; $y = 4; $z = $x * $y; print $z; ?>
Il risultato sarà 12.
Divisione in PHP
<?php $x = 26; $y = 2; $z = $x / $y; print $z; ?>
Risultato: 13.
Resto della divisione (mod) in PHP
<?php $x = 10; $y = $x % 3; print $y; ?>
Il risultato sarà 1.
Questo operatore restituisce il resto della divisione intera. Per esempio, 10 diviso 3 dà 3 con resto 1 — questo resto è il risultato dell’operatore %
.
Esempio pratico
<?php $time = time(); // Tempo attuale (in secondi dal 1° gennaio 1970) $hours = $time % 86400; // Ore totali (in secondi) $hours = floor($hours / 3600); // Numero intero di ore $minutes = $time % 3600; // Minuti totali (in secondi) $minutes = floor($minutes / 60); // Numero intero di minuti $seconds = $time % 60; // Secondi print $hours . ':' . $minutes . ':' . $seconds; ?>
Questo esempio mostra come ottenere l’ora corrente del server.
La funzione floor()
restituisce solo la parte intera di un numero (ad esempio, floor(3.7)
restituisce 3
).
Cos’è il tempo Unix (Unix Epoch o Unix Timestamp)?
Il tempo Unix è un sistema per rappresentare il tempo usato nei sistemi operativi UNIX e POSIX. L’origine del conteggio (epoch) è la mezzanotte (UTC) del 1° gennaio 1970. Questo metodo di memorizzazione del tempo, espresso in secondi, è molto comodo per confrontare date o conservarle in un formato compatto (4 o 8 byte).
Incremento (++) in PHP
<?php $x = 1; $y = 1; $x++; $y = $y + 1; print 'x=' . $x . '<br />'; print 'y=' . $y; ?>
Il risultato sarà x=2, y=2. Il sintassi deriva dal linguaggio C++.
Decremento (--) in PHP
<?php $x = 4; $y = 4; $x--; $y = $y - 1; print 'x=' . $x . '<br />'; print 'y=' . $y; ?>
Risultato: entrambi diventano 3.
Operatori di assegnazione PHP
Operatore PHP | Esempio | Equivalente |
---|---|---|
= | x=y | x=y |
+= | x+=y | x=x+y |
-= | x-=y | x=x-y |
*= | x*=y | x=x*y |
/= | x/=y | x=x/y |
.= | x.=y | x=x.y |
%= | x%=y | x=x%y |
Questi sono semplicemente modi abbreviati per scrivere operazioni aritmetiche.
Operatori di confronto PHP
Operatore PHP | Descrizione | Esempio |
---|---|---|
== | Uguale | 5==8 restituisce false |
!= | Diverso | 5!=8 restituisce true |
<> | Diverso | 5<>8 restituisce true |
> | Maggiore di | 5>8 restituisce false |
< | Minore di | 5<8 restituisce true |
>= | Maggiore o uguale | 5>=8 restituisce false |
<= | Minore o uguale | 5<=8 restituisce true |
Analizzeremo questi operatori più in dettaglio nelle lezioni sui costrutti condizionali e sui cicli.
Operatori logici PHP
Operatore PHP | Descrizione | Esempio |
---|---|---|
&& | E (AND) | x=6 y=3 (x<10 && y>1) restituisce true |
|| | O (OR) | x=6 y=3 (x==5 || y==5) restituisce false |
! | NON (NOT) | x=6 y=3 !(x==y) restituisce true |