Come nella maggior parte dei linguaggi di programmazione anche in PHP le variabili sono un tassello fondamentale. Come certamente saprete una variabile è un oggetto che useremo poi per contenere numeri, stringhe o altri oggetti senza sapere a priori il loro valore.

Possiamo pensare ad una variabile come ad una scatola con scritto sopra un nome il cui contenuto può variare dal rossetto all’albero di Natale. In PHP per indicare una si usa il simbolo $ seguito da una stringa che indicherà il nome che useremo per riferirci alla variabile.
Il nome può essere composto da tutte le lettere dell’alfabeto, da cifre e dal carattere underscore “_“.
Dobbiamo precisare pero che la prima lettera di una variabile non può essere un numero.

Se si viene da linguaggi come il Visual Basic è bene fare notare che stiamo usando un linguaggio case-sensitive che tiene conto sia delle maiuscole che delle minuscole all’interno del nome, quindi $uno e $Uno sono due variabili distinte.

A differenza di altri linguaggi, come C e C++, il PHP non richiede al programmatore di dichiarare le variabili che intende usare indicando il tipo e ci permette di usarle direttamente nel codice. Ecco alcuni esempi.

<?php
 
/* Questi nomi di variabile sono tutti corretti */
 
$scatola = 'ciao';
 
$_scatola = 1;
 
$SCATOLA_1 = "23";
 
$SCaTOLA_1 = 19;
 
/* Mentre questo nome non è corretto */
 
$1_ciao = 11; // un numero è la prima lettera del nome !
 
?>

Altra caratteristica importante del PHP sono le variabili dinamiche. In alcuni casi potrebbe tornarci utile usare delle variabili di cui non sappiamo nemmeno il nome. In questo caso il PHP ci permette di usare il contenuto di una variabile come nome della variabile che vogliamo usare.

Immaginiamo ora che la variabile $a contenga il valore “cassetto” e che nel nostro programma esista una variabile di nome $cassetto che contiene un valore qualsiasi che per ora non ci interessa. Per poter usare il contenuto della variabile $a per richiamare il valore di $cassetto non dovremmo far altro che aggiungere un altro simbolo $ prima di quello gia presente.

Se provassi a spiegarlo in altri modi riuscirei solo a confondervi le idee perciò sono convinto che un esempio vi fara capire al volo cosa intendo.

<?php
 
/* inizializza le variabili */
 
$a = 3;
 
$b = 6;
 
$c = 9;
 
$tot = 0;
 
$v = 'a';
 
$tot =  $tot + $$v; // ora $tot contiene 3
 
$v = 'b';
 
$tot =  $tot + $$v; // ora $tot contiene 9
 
$v = 'c';
 
$tot = $tot + $$v; // ora $tot contiene 18
 
?>

I valori contenuti dalle variabili possono essere di vari tipi.

Incominciamo col definire il numero intero che in PHP può variare a seconda del sistema operativo o architettura su cui il server gira, spesso però si tratta di un numero a 32bit.
Possono essere sia con che senza segno. Essendo un numero di 32 bit è facile trovare i valori massimi che è possibile rappresentare anche con una calcolatrice ma per ricordarci meglio diciamo che il range va da -2 miliardi a +2 miliardi.

<?php
 
/* alcuni esempi di numeri interi */
 
$intero1 = 0;
 
$intero2 = 12;
 
$intero3 = -1;
 
$intero4 = 10 * 10;
 
?>

Esistono poi i numeri in virgola mobile conosciuti anche come numeri decimali.

In altri linguaggi vengono chiamati double, float e cosi via. Da notare come in PHP i decimali vengono preceduti dal punto e non dalla virgola come noi italiani siamo abituati a fare.
Oltre a poter rappresentare decimali questo tipo di valore supporta anche i numeri in notazione scientifica.

<?php
 
/* alcuni esempi di numeri in virgola mobile */
 
$float1 = 3.141592;
 
$float2 = -2.71828;
 
$flaot3 = 8.27e10;
 
$float4 = 1.67e-27;
 
?>

Il tipo booleano è forse il piú semplice di tutti. Può assumere solo due valori, vero e falso. Può essere usato per immagazzinare il risultato di alcuni confronti fra variabili.

<?php
 
/* esempi di valori booleani */
 
$bool1 = TRUE;
 
$bool2 = FALSE;
 
?>

In alcuni rari casi ci può essere utile eliminare completamente una variabile dalle tabelle interne del PHP in questo caso la funzione unset() ci torna estremamente utile.
Questa particolare funzione accetta semplicemente la variabile che vogliamo cancellare in ingresso annientandola completamente.

vicius