Costanti in PHP

Le costanti in PHP sono contenitori di valori come le variabili. A differenza di queste però, possono essere definite una volta sola all'interno del programma e il loro valore non può essere più modificato.

Per la definizione di costanti valgono le seguenti regole:

  • Sono case sensitive.
  • Possono contenere solo valori scalari: booleani, interi, numeri a virgola mobile e stringhe.
  • Il nome della costante deve iniziare con una lettera o un underscore, i restanti caratteri possono essere lettere, numeri o underscore.
  • Vengono definite tramite la funzione define(), che accetta due argomenti: il nome della costante e il suo valore.

Vediamo un esempio di utilizzo

<?php
define('SOFTWARE_VERSION', 7.2);

echo "Versione del software ".SOFTWARE_VERSION; // Versione del software 7.2

Qui abbiamo introdotto l'operatore di concatenamento, rappresentato dal punto, utile quando dobbiamo unire due o più stringhe tra loro.

Nota: Per convenzione i nomi delle costanti sono scritti in lettere maiuscole. Questo aiuta la loro identificazione, differenziandole dalle variabili all'interno del programma.

Differenze tra costanti e variabili

  • Le variabili devono iniziare con il simbolo del dollaro $, le costanti non necessitato di questo.
  • Le variabili vengono definite con una semplice assegnazione, le costanti necessitano della funzione define().
  • L'ambito delle variabili è locale solo all'interno delle funzioni, altrimenti è globale. L'ambito delle costanti invece è globale in qualunque parte del programma.
  • Una volta impostate, le costanti non possono essere ridefinite o modificate.

Costanti magiche

PHP mette a disposizione alcune costanti predefinite chiamate costanti magiche, la cui sintassi è la seguente: __NAME__.

Nome Descrizione
__LINE__ Restituisce il numero della riga corrente di codice all'interno del file.
__FILE__ Restituisce il percorso completo e il nome del file che contiene lo script PHP.
__FUNCTION__ Restituisce il nome della funzione.
__CLASS__ Restituisce il nome della classe.
__METHOD__ Restituisce il nome del metodo della classe
Guida successiva: Array PHP