Uso delle variabili in PHP

Da Hacknowledge.

Le variabili in un linguaggio di programmazione, sono dei "contenitori" che al loro interno possono avere numeri e stringhe. Le variabili in PHP sono molto semplici da utilizzare, perchè a differenza di altri linguaggi non devono essere dichiarate prima del loro uso e nè deve essere specificato il loro contenuto. Per crearle basta inserire il simbolo $ ( SHIFT + 4 ) prima del nome della variabile ad esempio:

$variabile1 = 3;

Non esistono punti particolari in cui dichiararle e quindi possono essere create in un qualsiasi punto del programma senza generare nessun errore.

Indice

[modifica] Operazioni con le variabili

Le variabili possono essere sommate ( + ), divise ( / ), sottratte ( - ) oppure moltiplicate ( * ). Un ultima operazione possibile è l'ottenimento del resto di una divisione ( % ).

Facciamo un esempio pratico.

<?php
  $a = 5.5;
  $b = 4.5;
  $c = ($a / $b) + 1.5;
 
  echo '$a = ', "$a<br>\n",
       '$b = ', "$b<br>\n",
       '$c = ', "$c<br>\n";
?>

Una cosa che si può notare è l'utilizzo alternato dei simboli ' e ". Quando si utilizza l'apice singolo si stampa esattamente quello che si ha scritto, quindi '$a' stampa $a. Se si utilizzano i doppi apici invece si stampa il contenuto della variabile quindi "$a" stampa 5.5.

In PHP esistono dei simboli "speciali" che consentono di sintetizzare una espressione. Ad esempio al posto di scrivere "$a = $a + 2" si potrebbe scrivere "$a += 2" che somma 2 al valore di $a. Altri simboli simili che permettono di sintetizzare una espressione sono:

Simbolo Espressione sintetizzata Espressione espansa
+= $a += 2 $a = $a + 2
-= $a -= 2 $a = $a - 2
*= $a *= 2 $a = $a * 2
/= $a /= 2 $a = $a / 2
++ $a++ oppure ++$a $a = $a + 1
-- $a-- oppure --$a $a = $a - 1


Questi sono i principali simboli, ne esistono altri ma per il momento è meglio fermarci qui.

[modifica] Conversioni di tipo

Anche se in PHP le variabili sono generiche e non richiedono specificazioni varie del loro tipo, può essere utile però all'interno di un programma accertarsi che la variabile con cui si sta operando sia del tipo che vogliamo.
I tipi sono:

  • int ( o integer ) - Tipo intero senza virgola
  • float ( o double o real ) - Tipo a virgola mobile
  • string - Tipo contenente una stringa
  • bool ( o boolean ) - Tipo booleano
  • array - Tipo array ( più elementi )
  • object - Tipo oggetto
Facciamo alcuni esempi sul loro utilizzo, utilizzando questo codice commentato:
<?php
   echo (int)"123.32a";   // Restituisce 123
   echo (float)"134.42b"; // Restituisce 134.42
   echo (bool)"ciao";     // Restituisce TRUE
   /* Il tipo bool restituisce TRUE nella conversione di
      qualunque stringa tranne che nel caso si abbia ""
   */
?>

Un altro metodo potrebbe essere l'utilizzare la funzione settype che ha la seguente sintassi:

settype( variabile, tipo );
Ad esempio:
<?php
  $variabile = 123.456;
  settype($variabile, "string"); // Il tipo lo riceve dentro i doppi apici
  /* A questo punto variabile è uguale a "123.456" */
?>

[modifica] Esaminare il tipo

Per esaminare il tipo di una variabile si può utilizzare la funzione is_type() che ha la seguente sintassi:

is_"type"( variabile );
ad esempio:
is_integer(123);

Restituisce TRUE in quanto è vera. Altre sono:

  • is_integer - Verifica che sia un intero
  • is_float - Verifica che sia un tipo a virgola mobile
  • is_numeric - Verifica che sia un numero ( intero o a virgola mobile )
  • is_string - Verifica che sia una stringa
  • is_bool - Verifica che sia una variabile di tipo booleano
  • is_array - Verifica che sia un array
  • is_object - Verifica che sia un oggetto
  • is_null - Verifica che sia vuoto

Tutte queste funzioni restituiscono solo TRUE o FALSE

Per sapere come il php considera una variabile si può usare invece la funzione gettype() ad esempio:

 gettype( variabile );

restituisce il tipo in stringa.

[modifica] Tipi di Varibili

Le variabili possono avere diversi attributi, cioè possono essere costanti, globali o statiche.

[modifica] Costanti

Le costanti sono variabili che hanno visibilità globale e non possono essere modificate nel corso del programma. Possono contenere al loro interno qualunque tipo di valore.
La loro caratteristica è che permetto di avere un codice più leggibile e gestibile in modo semplice.

La loro dichiarazione avviene per mezzo della funzione '0'define() ad esempio:
<?php
  define('NOME_SCRIPT', "Mio script");
 
  echo "Questo script si chiama: ", NOME_SCRIPT, ".\n";
?>

Per sapere se una costante è stata definita o meno si può utilizzare la funzione defined().

[modifica] Globali

Le variabili globali sono molto utili all'interno delle funzioni, permettono di richiamare una variabile che non è stata passata come parametro ma è disponibile all'esterno di una funzione.

Un codice di esempio potrebbe essere:
<?php
  $nome = "Ciao";
 
  function persona($anni)
  {
   global $nome;
   ...

In questo esempio alla funzione ( verranno spiegate meglio più avanti ) viene passato solo il parametro degli anni, ma all'interno della funzione per mezzo dell'attributo global viene recuperata la variabile $nome dichiarata all'esterno della funzione.

[modifica] Statiche

Le variabili statiche sono utili quando uno script in php è diviso in vari moduli o il sorgente è troppo lungo e intrecciato per andare a vedere ogni volta se la variabile che si sta per usare può essere modificata oppure no ( per vari motivi ).

La dichiarazione di queste variabili è molto semplice:
<?php 
  static $var = 24;
  ...
?>
Se ad esempio ad un punto di questo script viene scritto qualcosa come:
$var += $n
Si provoca un errore, in quanto $var non può essere modificata.
Strumenti personali