In questo articolo Indice dei contenuti 3 sezioni
Chi apre un negozio online, un blog su WordPress o una piattaforma per la didattica come Moodle sta usando, quasi sempre senza saperlo, PHP. Questo linguaggio resta tra i più diffusi per sviluppare applicazioni Web, gestire contenuti dinamici e costruire servizi raggiungibili via Internet. Dietro PrestaShop, Magento, Nextcloud, Joomla e molti software aziendali lavora un motore PHP che riceve le richieste, elabora le informazioni, interroga i database e restituisce risposte ai browser o ad altri programmi. C’è però un equivoco frequente da chiarire subito. Installare PHP non vuol dire installare un server Web, e avere il linguaggio sul computer non garantisce che Apache, Nginx o IIS sappiano come sfruttarlo.
Cos’è PHP e perché continua a essere così diffuso
Si tratta di un linguaggio di programmazione general purpose, particolarmente adatto allo sviluppo lato server. All’inizio la sigla stava per Personal Home Page, oggi significa PHP: Hypertext Preprocessor, un acronimo ricorsivo che richiama il suo compito originario, cioè elaborare i contenuti prima che arrivino al browser. Mentre HTML descrive come è fatta una pagina, PHP esegue istruzioni, applica condizioni, legge e scrive file, consulta database e dialoga con altri servizi. Uno script può generare HTML ma anche JSON, XML, immagini o documenti PDF.
Le tre tecnologie che si incontrano più spesso hanno ruoli ben distinti. HTML definisce la struttura, JavaScript gestisce le interazioni nella pagina e può girare anche sul server tramite Node.js, mentre PHP lavora sul server e il browser non vede mai il suo codice sorgente ma solo il risultato. In un ecommerce, per esempio, PHP recupera i dati di un prodotto, HTML li mostra e JavaScript aggiorna il carrello senza ricaricare tutto. Credenziali del database, chiavi private e logica riservata devono quindi restare sul server.
La sua popolarità nasce dall’enorme quantità di strumenti, librerie e applicazioni accumulati negli anni. Si integra con Apache e Nginx, dispone di driver per moltissimi database e funziona su Windows, Linux e macOS. Framework come Laravel e Symfony aiutano a organizzare progetti complessi, mentre la famiglia PHP 8 ha introdotto e perfezionato union types, attributi, enumerazioni e proprietà di sola lettura. Non esiste comunque un motivo tecnico per preferirlo sempre a Python, JavaScript, Go o Java. Dipende da cosa si vuole realizzare, anche se per i servizi Web resta una scelta molto azzeccata.
Cosa succede quando si apre una pagina in PHP
Quando un utente visita un indirizzo come prodotti.php?id=42, il browser invia una richiesta HTTP. Il server Web capisce di cosa si tratta. Se è un’immagine o un file statico lo spedisce direttamente, se invece è uno script lo passa al runtime PHP attraverso una delle modalità disponibili, che possono chiamarsi modphp, CGI, FastCGI o FPM e cambiano in prestazioni, consumo di memoria e sicurezza. Il codice recupera il prodotto numero 42, ne verifica la disponibilità, calcola il prezzo e compone la pagina. Spesso poi CMS e framework usano un unico punto d’ingresso chiamato index.php, così un indirizzo come /prodotti/42 attiva codice PHP anche senza estensione.
Il cuore di tutto è lo Zend Engine. Analizza il sorgente, ne controlla la sintassi e lo compila in opcode, istruzioni intermedie eseguite dalla Zend VM. Definirlo semplicemente “interpretato” è quindi riduttivo. Per non rifare ogni volta lo stesso lavoro interviene OPcache, che conserva in memoria condivisa gli opcode già pronti. C’è anche un compilatore JIT che traduce alcune porzioni di codice in istruzioni macchina, con benefici che però variano molto in base al tipo di elaborazione e non accelerano in automatico WordPress o qualsiasi altra applicazione.
Il browser, tra l’altro, non è indispensabile. Con l’interfaccia a riga di comando basta lanciare php script.php per eseguire script di amministrazione o procedure automatiche. Esiste anche un piccolo server HTTP integrato, comodo per provare le applicazioni mentre si sviluppa, ma la documentazione ufficiale lo considera uno strumento di test e non un sostituto di Apache o Nginx in produzione.
Installare PHP su Windows 11 e Windows Server
Su Windows il linguaggio può funzionare come interprete da terminale, appoggiarsi ad Apache oppure lavorare con IIS tramite FastCGI. Per un’installazione manuale il riferimento è la pagina ufficiale di download, da cui si raggiungono anche i pacchetti già compilati per il sistema Microsoft. Va scelta la versione compatibile con il sistema e con le applicazioni da eseguire. Sulle normali installazioni x64 serve una build a 64 bit, controllando anche che sia presente il runtime Microsoft richiesto.
Fonte: TecnoAndroid


