dal 2015 - visita n. 961
variabili e tipi php-03
variabili e tipi php-03

 

Le variabili

Le variabili sono tra i componenti fondamentali di qualsiasi linguaggio di programmazione, in quanto consentono di trattare i dati del programma senza sapere a priori quale sarà il loro valore. Si può immaginare una variabile come una specie di contenitore all'interno del quale viene conservato il valore che interessa, e che può cambiare di volta in volta.

In PHP il nome delle variabili si compone usando lettere, numeri ed il trattino basso, o underscore (_). Il primo carattere del nome non può mai essere un numero. Il nome delle variabili è sensibile alle maiuscole ed alle minuscole (case sensitive), di conseguenza, nomi di variabili che differiscono solo per l'uso delle maiuscole/minuscole sono per PHP variabili distinte. Negli script PHP il nome delle variabili è sempre preceduto dal simbolo del dollaro $. PHP ha una caratteristica che lo rende molto più pratico rispetto ad altri linguaggi di programmazione: non richiede che le variabili vengano dichiarate prima del loro uso. L'esistenza di una variabile inizia direttamente con la sua valorizzazione:

<?php
  $a = 25;
?>

Con questo codice si definisce la variabile $a, assegnandole il valore 25. L'istruzione si conclude sempre con il punto e virgola. L'utilità di una variabile diventa evidente nel momento in cui la si utilizza all'interno di espressioni matematiche o logiche. Ecco un semplice esempio:

<?php 
  $a = 25; 
  $b = 4; 
  $c = $a * $b; 
  echo "Il risultato dell'operazione (25 * 4) è  $c";
?> 

In questo codice si introducono tre variabili: $a (che vale 25), $b (che vale 4), $c che conterrà il valore del prodotto di $a e $b. L'ultima istruzione stampa il risultato ottenuto, si noti che dopo l'esecuzione del codice $c varrà 100.

Negli esempi precedenti è stata eseguita l'inizializzazione delle variabili, indicata spesso con il termine gergale di valorizzazione, termine che sta ad indicare la prima volta in cui si assegna un valore ad una variabile. In realtà ci si può riferire ad una variabile anche senza che sia stata inizializzata, ma questa pratica è un'operazione sconsigliata e potrebbe generare errori durante l'esecuzione in base ad alcune direttive di configurazione di PHP che si vedranno più avanti. Ad esempio, supponendo che nello script non sia stata valorizzata nessuna variabile $z, si potrebbe scrivere un'istruzione del genere:

<?php
  echo $z;
?>

Questo codice non produrrà alcun output, in quanto la variabile $z non esiste. Gli errori generati quando si cerca di utilizzare in lettura una variabile non inizializzata sono di tipo E_NOTICE; sono gli errori di livello più basso, cioè meno gravi, che normalmente non vengono mostrati da PHP, ma che si possono abilitare attraverso il file di configurazione php.ini. Un errore di questo genere non compromette il buon funzionamento dello script, che infatti viene eseguito regolarmente; però potrebbe essere ugualmente indice di un qualche errore commesso da chi ha scritto il codice. Un esempio chiarisce meglio quanto esposto:

<?php
  $a = 25;
  $b = 4;
  $risultato = $a + $b;
  echo $risutato;
?>

Questo codice assegnare i valori 25 e 4 a due variabili, poi effettua la somma nella variabile $risultato ed infine dovrebbe stampare il risultato. Però contiene un errore: nell'istruzione di stampa viene indicata la variabile '$risutato' invece che '$risultato'. Chi ha scritto il codice si aspetterebbe di vedere comparire sul browser il risultato 29, invece non troverà proprio nulla, perchè la variabile '$risutato' non è definita, e quindi non ha nessun valore.

A questo punto, il programmatore potrebbe anche perdere molto tempo alla ricerca del problema (in realtà questo può sembrare un problema banalissimo, ed in effetti lo è, ma un caso del genere si presenta di solito in un contesto molto più complesso, ed stranamente un errore semplice come questo si dimostra molto più difficile da scovare per chi lo ha commesso). Qui però la segnalazione di errore di PHP può venirci in aiuto: infatti, se siamo abituati ad utilizzare le variabili nella maniera più corretta, cioè dopo averle inizializzate, un errore come questo ci indica chiaramente che abbiamo sbagliato a scrivere il nome. Per questo il nostro consiglio è quello di tenere abilitata la visualizzazione degli errori anche di tipo E_NOTICE, e di utilizzare le variabili solo se inizializzate o dopo aver controllato la loro esistenza (vedere nel file PHP.INI che siano presenti le seguenti direttive:
display_errors = On
error_reporting = E_ALL


I tipi di dato

Le variabili contengono i dati che devono essere elaborati, ma i dati possono essere di tipo differente, ognuno dei quali ha un comportamento ed un'utilità particolare. Analizzeremo brevemente i tipi di dato che PHP permette di utilizzare all'interno del proprio codice premettendo che PHP, a differenza di altri linguaggi, associa il tipo di dato al valore e non alla variabile (ad esempio possiamo assegnare alla stessa variabile una stringa e poi un numero senza incorrere in alcun errore) ed effettua conversioni automatiche dei valori nel momento in cui siano richiesti tipi di dato differenti (ad esempio in un'espressione).


Booleano - Questo tipo di dato serve per indicare i valori vero o falso all'interno di espressioni logiche. Il tipo booleano è associato alle variabili che contengono il risultato di un'espressione booleana oppure i valori true e false. Vediamo un rapido esempio:

<?php
  $v = true;
  $f = false;
?>

Intero - Un numero intero, positivo o negativo, il cui valore massimo (assoluto) può variare in base al sistema operativo su cui gira PHP, ma che generalmente si può considerare, per ricordarlo facilmente, di circa 2 miliardi (2 elevato alla 31esima potenza), nei sistemi a 32 bit.

<?php
  $int1 = 231;
  $int2 = -435;
  $int3 = 7 * 8;    //$int3 vale 56
?>

Virgola mobile - Un numero decimale (a volte citato come "double" o "real"). Attenzione: per indicare i decimali non si usa la virgola, ma il punto. Anche in questo caso la dimensione massima dipende dalla piattaforma. Normalmente comunque si considera un massimo di circa 1.8e308 con una precisione di 14 cifre decimali. Si possono utilizzare le seguenti sintassi:

<?php
  $vm1 = 4.153;     // 4,153
  $vm2 = 3.2e5;     // 3,2 * 10^5, cioè 320.000
  $vm3 = 4E-8;      // 4 * 10^-8, cioè 4/100.000.000 = 0,00000004
?>

Stringa - E' un qualsiasi insieme di caratteri, senza limitazione di numero, normalmente contenuto all'interno di una coppia di apici doppi o apici singoli. Le stringhe delimitate da apici sono la forma più semplice, consigliata quando all'interno della stringa non vi sono variabili di cui vogliamo ricavare il valore:

<?php
  $st = 'Carlo, entrando, disse: "Ciao a tutti", ma nessuno rispose.'; 
  echo $st; 
?> 

Questo codice stamperà la frase:

Carlo, entrando, disse: "Ciao a tutti", ma nessuno rispose.

Si noti che poichè la stringa è stata delimitata inizialmente con apici semplici gli apici doppi in essa contenuti vengono riportati in output come normalissimi caratteri.
Delimitare con apici doppi, invece, consente di usare le stringhe in una maniera più sofisticata, in quanto, se all'interno della stringa delimitata da virgolette PHP riconosce un nome di variabile, lo sostituisce con il valore della variabile stessa.

<?php
  $nome = 'Anna';
  echo "$nome è simpatica... a pochi<br>";     // stampa: Anna è simpatica... a pochi
  echo "{$nome} è simpatica... a pochi<br>";   // stampa: Anna è simpatica... a pochi 
  echo '$nome è simpatica... a pochi<br>';     // stampa: $nome è simpatica... a pochi
?> 

Array - Possiamo considerare un array come una collezione di variabili, un contenitore di una serie di valori, ciascuno dei quali identificato da un indice che lo riconosce univocamente. Facciamo un primo esempio, definendo un array composto di sette valori:

<?php
  $colori = array('bianco', 'giallo', 'blu', 'verde', 'rosso', 'arancio', 'nero');
  echo $colori[1];    //stampa 'giallo'
  echo $colori[5];    //stampa 'arancio'
?> 

A questo punto ciascuno dei nostri sette colori è individuato da un indice numerico progressivo, assegnato automaticamente da PHP partendo da 0 (zero). Per recuperare un determinato valore dalla variabile che contiene l'array, è sufficiente specificare il suo indice all'interno di parentesi quadre apposte alla destra del nome della variabile:

Gli array sono così importanti che meritano un approfondimento nei prossimi capitoli.

Oggetto - Le classi e gli oggetti sono due degli argomenti sui quali gli sviluppatori di PHP hanno voluto puntare maggiormente nelle ultime versioni, a partire dalla 5. L'argomento verrà approfondito nei prossimi capitoli.


















Menù
Introduzione
Ambiente di sviluppo
intro php-01
tag e commenti php-02
variabili e tipi php-03
operatori php-04
php IF esercizi
php FOR esercizi
php objects intro
php objects parte 1
php objects parte 2
php objects parte 3
php objects parte 4
php objects parte 5
CLIL
php socket intro
php socket parte 1
php socket parte 2
php socket parte 3
php socket parte 4
php socket parte 5
php socket parte 6
php socket extra
linux netcat


MiniGuida PHP
Guida Ufficiale PHP (en)
Form Base
Flat DataBase
Pagine Protette
mySQL



Il segreto dell'insegnamento ha qualcosa a che fare con il teatro. Imitate semplicemente il migliore professore che avete conosciuto.
Ezra W.L. Pound (1885-1972)

Valid CSS!
pagina generata in 0.001 secondi