PHP, che sta per "Hypertext Preprocessor", è un linguaggio di scripting lato server open-source progettato principalmente per lo sviluppo web, ma utilizzato anche come linguaggio di programmazione generale. È ampiamente conosciuto per la sua facilità d'uso e flessibilità nella creazione di pagine web dinamiche, nell'interazione efficace con i database e nella gestione dei moduli. PHP può essere incorporato in HTML ed è particolarmente adatto per i server web. A partire dal 2023, PHP alimenta una percentuale significativa di siti web a livello globale, comprese piattaforme importanti come WordPress, Facebook e Wikipedia.
PHP è stato originariamente creato dal programmatore danese-canadese Rasmus Lerdorf nel 1993. È iniziato come un insieme di binari Common Gateway Interface (CGI), che Lerdorf utilizzava per mantenere la sua homepage personale. Con l'aumentare dell'interesse per il suo progetto iniziale, Lerdorf lo ampliò in PHP/FI (Personal Home Page/Forms Interpreter) nel 1995, che consentiva agli utenti di raccogliere dati dai moduli e gestire più facilmente i contenuti.
Dopo il rilascio di PHP/FI, il linguaggio ha visto contributi da una comunità più ampia, portando al rilascio di PHP 3 nel 1998, sviluppato da Andi Gutmans e Zeev Suraski. Questa versione ha introdotto un motore più robusto e nuove funzionalità, ponendo le basi per PHP 4 nel 2000. PHP 5 è seguito nel 2004, introducendo capacità di programmazione orientata agli oggetti (OOP) e l'estensione PHP Data Objects (PDO) per l'interazione con i database.
Da allora, PHP ha visto uno sviluppo continuo, con PHP 7 rilasciato alla fine del 2015, concentrandosi su miglioramenti delle prestazioni e nuove funzionalità del linguaggio. A partire dal 2021, è stato rilasciato PHP 8, introducendo la compilazione JIT (Just In Time), tipi unione, argomenti nominati e attributi, consolidando ulteriormente la sua rilevanza nello sviluppo web moderno. PHP continua a essere un attore significativo nel panorama dei linguaggi di programmazione, con un vasto ecosistema di framework, librerie e risorse della comunità.
In PHP, le variabili sono dichiarate con un simbolo di dollaro ($
) precedendo il nome della variabile.
$saluto = "Ciao, Mondo!";
PHP supporta sia array indicizzati che associativi, che possono contenere più valori.
$frutti = array("mela", "banana", "arancia");
$arrayAssociativo = array("nome" => "Giovanni", "età" => 30);
Le funzioni in PHP possono essere definite utilizzando la parola chiave function
, consentendo il riutilizzo del codice.
function somma($a, $b) {
return $a + $b;
}
PHP ha strutture di controllo tipiche come if
, else
e switch
per la logica condizionale.
if ($età >= 18) {
echo "Adulto";
} else {
echo "Minorenne";
}
PHP supporta vari cicli, tra cui for
, while
e foreach
.
foreach ($frutti as $frutto) {
echo $frutto;
}
PHP supporta i concetti OOP, comprese classi e oggetti.
class Auto {
public $colore;
function __construct($colore) {
$this->colore = $colore;
}
}
$miaAuto = new Auto("blu");
PHP fornisce la gestione degli errori utilizzando le eccezioni con try
, catch
e finally
.
try {
throw new Exception("Si è verificato un errore");
} catch (Exception $e) {
echo $e->getMessage();
}
PHP consente di includere file per una programmazione modulare.
include 'header.php';
PHP fornisce diverse variabili integrate chiamate superglobali, accessibili da qualsiasi ambito.
echo $_POST['username'];
A partire da PHP 7, le dichiarazioni di tipo possono essere utilizzate per garantire la sicurezza dei tipi.
function somma(int $a, int $b): int {
return $a + $b;
}
Gli ambienti di sviluppo integrati (IDE) comuni per PHP includono PhpStorm, Visual Studio Code, NetBeans ed Eclipse PDT. Ognuno fornisce strumenti robusti per il debug, il completamento del codice e la gestione dei progetti.
PHP è principalmente interpretato, facendo affidamento sul Zend Engine per l'elaborazione degli script PHP. Può essere eseguito in un ambiente server con stack software come XAMPP o LAMP.
Tipicamente, i progetti PHP sono strutturati in directory contenenti file sorgente, file di configurazione e dipendenze. Composer è il gestore delle dipendenze comunemente utilizzato per le applicazioni PHP, semplificando la gestione dei pacchetti e il caricamento automatico.
PHP è principalmente utilizzato per lo scripting lato server, ma le sue applicazioni si estendono a:
Rispetto a linguaggi come JavaScript, Python e Ruby, PHP rimane una scelta popolare per lo sviluppo del back-end web grazie alle sue ampie librerie e framework. Tuttavia, mentre PHP è esplicitamente progettato per le applicazioni web, linguaggi come Python e Ruby sono spesso utilizzati per compiti di programmazione più generali.
La traduzione da codice a codice, o transpilation, implica la conversione del codice da un linguaggio di programmazione a un altro. Esistono diversi strumenti per PHP: