C++ o quelli che funzionano in modo diverso.
Richiamiamo due importanti proprietà degli operatori: la precedenza e l’associatività:
La precedenza stabilisce l’ordine in cui l’espressione viene valutata, per esempio 3+5*5 viene valutata
5*5=25+3=28 perché l’operatore di moltiplicazione ha la precedenza su quello di somma. Le parentesi
alterano la precedenza, in caso di dubbio usatele!
L’associatività invece si riferisce invece all’ordine in cui vengono eseguiti operatori con la medesima
precedenza, per esempio gli operatori aritmetici di pari precedenza, che hanno associatività sinistra vengono
eseguiti da sinistra verso destra, mentre gli operatori di cast o incremento vengono eseguiti da destra verso
sinistra (per esempio (float) 3+2+5; esegue nell’ordine 3+2 poi al risultato viene aggiunto 5 e infine
avviene la conversione in float.
Associatività Operatori, quelli con precedenza più bassa sono elencati per primi
|
sinistra , |
|
sinistra or |
|
sinistra xor |
|
sinistra and |
|
destra print |
|
sinistra = += -= *= /= .= %= &= |= ^= ~= <<= |
|
sinistra ? : |
|
sinistra || |
|
sinistra && |
|
sinistra | |
|
sinistra ^ |
|
sinistra & |
|
non associativi == != === !== |
|
non associativi < <= > >= |
|
sinistra << >> |
|
sinistra + – . |
|
sinistra * / % |
|
destra ! ~ ++ — (int) (float) (string) (array) (object) @ |
|
destra [ |
|
non associativi new |
PHP supporta un operatore di controllo dell'errore: il carattere at (@). Quando prefisso ad una espressione in
PHP, qualunque messaggio di errore che potesse essere generato da quella espressione sarà ignorato.
Se la caratteristica track_errors è abilitata, qualsiasi messaggio di errore generato dall'espressione sarà
salvato nella variabile globale $php_errormsg. Questa variabile sarà sovrascritta ad ogni errore, così
controllatela subito se volete usarla.
<?php
/* Errore di file intenzionale */
$my_file = @file ('file_inesistente') or
die ("Apertura del file fallita: l'errore è '$php_errormsg'");
// questo funziona per qualsiasi espressione, non solo funzioni:
$value = @$cache[$key];
// non verrà generata una notifica se l’indice $key non esiste.
?>
Operatori di esecuzione
PHP supporta un operatore di esecuzione: backticks (``). Notare che quelli non sono apostrofi! PHP
cercherà di eseguire il contenuto dei backticks come comando di shell; sarà restituito l'output (non sarà
semplicemente esportato come output; può essere assegnato ad una variabile).
$output = `ls -al`;//lista il contenuto di una directory Unixecho
"<pre>$output</pre>";
shell_exec().
Operatori di stringa
Ci sono due operatori di stringa. Il primo è l'operatore di concatenazione ('.'), che restituisce la
concatenazione dei suoi argomenti a destra e a sinistra. Il secondo è l'operatore di assegnazione concatenata
('.='), che aggiunge alla fine dell'argomento sul lato destro l'argomento sul lato sinistro.
$a = "Ciao ";
$b = $a . "Mondo!"; // ora $b contiene "Ciao Mondo!"
$a = "Ciao ";
$a .= "Mondo!"; // ora $a contiene "Ciao Mondo!"
Popularity: unranked [?]
Vuoi essere sempre aggiornato??? Iscriviti ai feed o invia un trackback
Nessun commento, scrivi tu il primo!
Articoli correlati