PHP è un linguaggio di scripting lato server per costruire pagine web. Un file .php viene eseguito sul web server, stampa HTML (per esempio con echo "<h1>Hello</h1>";) e il server invia quell'HTML al browser del visitatore. Il browser non vede mai il codice PHP, solo il suo risultato.
Premi Run: PHP costruisce la pagina qui sotto, e la scheda Page la mostra come farebbe un browser.
Passa alla scheda Output e vedi l'HTML semplice che PHP ha stampato. Quel testo è esattamente ciò che riceverebbe un browser. Cambia un prezzo o aggiungi un prodotto ed eseguilo di nuovo.
A cosa serve PHP
PHP è nato per il web, ed è ancora lì che gira per la maggior parte:
- Siti web e CMS. WordPress, Drupal e Joomla sono scritti in PHP, così come ogni sito costruito su di essi.
- Applicazioni web. Framework come Laravel e Symfony si usano per negozi online, dashboard, prodotti SaaS e strumenti interni.
- API. Uno script PHP può stampare JSON invece di HTML, ed è così che molte app mobili e frontend JavaScript ricevono i loro dati.
- Script da riga di comando. Cron job, importazioni di dati, generatori di report e strumenti di deploy girano con
php script.php, senza alcun web server.
Come una richiesta PHP diventa HTML
Quando qualcuno apre https://example.com/menu.php, succede questo:
- Il browser invia una richiesta HTTP al server.
- Il web server (Apache, Nginx con PHP-FPM, o il server integrato di PHP) vede l'estensione
.phpe passa il file a PHP. - PHP esegue il file dall'inizio alla fine. Il testo fuori dai tag
<?php ... ?>viene copiato nell'output così com'è; il codice dentro i tag viene eseguito e può aggiungere altro testo conecho. - Tutto ciò che PHP ha stampato diventa il corpo della risposta, e il browser lo visualizza.
- PHP dimentica tutto. La richiesta successiva avvia una nuova esecuzione dello script.
Il punto 5 spiega perché le applicazioni PHP usano sessioni e database: niente di ciò che sta in una variabile sopravvive tra due richieste. Il form qui sotto mostra il ciclo. Eseguilo, scrivi un nome nel form e premi Send: lo stesso script gira di nuovo, questa volta con $_POST compilato.
htmlspecialchars trasforma caratteri come < in <, così un nome come <b>Ada</b> viene mostrato come testo invece di diventare markup. Ogni valore che arriva da un visitatore va stampato così; i dettagli sono nella pagina su htmlspecialchars.
PHP si mescola all'HTML
Un file PHP può essere solo codice oppure una pagina HTML con delle isole di PHP. Tre tag fanno quasi tutto il lavoro:
| Tag | Cosa fa |
|---|---|
<?php ... ?> | Esegue il codice al suo interno |
<?= $value ?> | Forma breve di <?php echo $value; ?> |
?> alla fine di un file | Facoltativo; omettilo nei file che contengono solo PHP |
Imposta $hour a 9 ed eseguilo di nuovo per vedere l'altro saluto.
Com'è fatto il codice PHP
Le variabili iniziano con $, le istruzioni terminano con ;, e le stringhe tra virgolette doppie possono contenere variabili. Gli array funzionano sia come liste sia come mappe chiave/valore.
Qui l'output è testo semplice, perché lo script non stampa tag HTML. È lo stesso codice che eseguiresti da un terminale.
PHP moderno (PHP 8)
PHP 8.0 (2020) ha aggiunto le espressioni match, gli argomenti con nome, gli union type, str_contains() e un compilatore JIT; PHP 8.1 ha aggiunto le enum e le proprietà readonly. Il codice scritto per PHP 8.3 ha questo aspetto:
Cosa significa PHP
PHP sta per "PHP: Hypertext Preprocessor". Il nome è ricorsivo: la prima P sta per PHP stesso. Rasmus Lerdorf pubblicò la prima versione nel 1995 come "Personal Home Page Tools", una raccolta di script per la sua homepage, e il nome attuale è arrivato con PHP 3 nel 1998. "Preprocessore di ipertesto" descrive bene il lavoro: PHP elabora un file prima che l'ipertesto (HTML) venga inviato.
Errore tipico all'inizio: aprire un file .php nel browser
Facendo doppio clic su index.php lo apri come file locale, e il browser mostra il codice PHP grezzo oppure propone di scaricarlo. Non viene eseguito nulla, perché dall'altra parte non c'è PHP. Un file .php deve essere servito da un web server che lo passa a PHP. Sul tuo computer la via più breve è il server integrato di PHP:
php -S localhost:8000
Poi apri http://localhost:8000/index.php. La pagina su come eseguire PHP spiega questo e l'esecuzione di script dal terminale, e installare PHP ti porta prima PHP sul computer.
Domande frequenti
Cosa significa PHP?
PHP sta per "PHP: Hypertext Preprocessor", un acronimo ricorsivo. Il nome originale del 1995 era "Personal Home Page Tools", dagli script che Rasmus Lerdorf scrisse per il proprio sito.
PHP è un linguaggio frontend o backend?
Backend. PHP gira sul server, e il browser riceve solo l'HTML (o il JSON) che lo script ha stampato. Il browser non vede mai il codice PHP.
A cosa serve principalmente PHP?
A costruire pagine e applicazioni web sul server: siti di contenuti, negozi online, pannelli di amministrazione e API. WordPress, Drupal, Magento, Laravel e Symfony sono tutti scritti in PHP. Esegue anche script da riga di comando, come cron job e importazioni di dati.
PHP si usa ancora nel 2026?
Sì. Secondo W3Techs PHP gira su circa tre quarti dei siti di cui riesce a rilevare il linguaggio lato server, in gran parte grazie a WordPress. Il linguaggio è sviluppato attivamente: PHP 8.0 ha aggiunto match, gli argomenti con nome e un compilatore JIT, e PHP 8.1 le enum e le proprietà readonly.
PHP è facile da imparare?
È uno dei primi linguaggi più semplici per il web: un file con <?php echo "Hello"; è già una pagina funzionante, e qualsiasi hosting condiviso lo esegue. La parte più difficile è prendere presto le abitudini sicure, come fare l'escape dell'output con htmlspecialchars e usare i prepared statement per l'SQL.