Made by DoomBoy
Come un fulmine a ciel sereno, la sera del 13
luglio, è giunta al mio orecchio la notizia che, a più di un anno
dall'uscita dell'ultima beta version, Zend
pubblica senza alcun preavviso la release
ufficiale di PHP5.0.
Prima di parlare delle nuove features di PHP
5, trovo doveroso fare una piccola introduzione volta a spiegare cosa è
php e più genericamente cosa sono i linguaggi di programmazione definiti
"lato server", oppure "server-side"
se preferite i paroloni da sviluppatore inglesizzato, per fare poi qualche piccolo
cenno storico sulla vita di php.
Dopo anni in cui il web era essenzialmente un
concentrato di pagine html piane (l'html non è un linguaggio di programmazione,
ma un linguaggio di "formattazione testi" che nel tempo si è
evoluto fino ad assomigliare ad un linguaggio di programmazione
basilare), ad un certo punto è nata la necessità di creare qualcosa
che andasse oltre. Occorreva qualcosa che fosse più potente e versatile
di Java e Javascript, linguaggi di scripting lato utente che
avevano come grosso limite l'impossibilità di scambiare dati tra il browser
dell'utente che naviga, ed il server, senza ricorrere a pesantissime applet
java ed al download di classi e classi, in un periodo in cui l'utente medio
aveva una connessione analogica variabile tra i 33.6 ed i 56 kbps.
E' nata in questo modo l'idea di creare dei
linguaggi di programmazione che permettessero al server web di creare pagine complesse,
modellate su misura per le necessità di ogni utente, facendole interagire
anche con dei database, cosa fino ad allora impossibile, per poi restituire all'utente
finale un prodotto già "convertito" in qualcosa di interpretabile
dai comuni browser web, senza la necessità di utilizzare programmi di connessione
al web o interpreti alternativi.
Sono nati così i due più
grandi "avversari" del web:
l' ASP (Advanced Server Page) di Microsoft ed il PHP (PHP: Hypertext
Preprocessor...si, lo so, è un acronimo ricorsivo!) di Zend.
La differenza sostanziale tra i due è lampante: Il primo è un prodotto
commerciale pensato per interagire con server MS e con database di tipo Access
e MS-Sql, a pagamento; il secondo è un progetto completamente open-source,
nato sotto la stella di Linux, ma perfettamente funzionante anche su piattaforme
IIS.
Il funzionamento di PHP (così come di
ASP, del resto) è semplice:
Un utente richiama una url col proprio browser,
la pagina che viene richiesta, se contiene al suo interno codice PHP, viene letta
dal server web che, una volta effettuato il parsing (ovvero l'interpretazione
del codice, l'elaborazione dei dati richiesti e la conversione in qualcosa che
il browser può "capire"), restituisce all'utente una pagina web
completamente in html piano, ovvero un codice completamente noto al browser che
può quindi restituire all'utente il sito finito.
In questo modo, le applicazioni pensate per
il web riescono ad assumere la complessità di veri e propri programmi,
è possibile scambiare informazioni col server grazie alle famose variabili
"post" e "get", ma non solo, si possono creare basi dati in
tutti i più comuni dbm, come Mysql, MS-Sql, Postgres, Oracle, ecc.
Tutte queste caratteristiche, unite alla semplicità
di utilizzo del linguaggio da parte di tutti i programmatori
che hanno familiarità con il linguaggio C (dal quale
php eredita sintassi e molto altro), hanno reso PHP il linguaggio
di programmazione web più diffuso al mondo, grazie
anche al fatto che PHP è distribuito sotto GPL, ed
è quindi di libero utilizzo e diffusione (open source).
Per chi non lo sapesse, PHP è un progetto realizzato
dalla Apache Software Foundation, la fondazione che sviluppa
APACHE,
il più versatile web server pensato per macchine
basate su piattaforme di vario tipo (non solo x86) ed esistente
anche per sistemi operativi Microsoft.
Forse è difficile parlare delle nuove
caratteristiche di PHP5 senza fare una cronologia delle varie implementazioni
avvenute negli anni, ma ci vorrebbe davvero troppo a descrivere quanto PHP è
cresciuto e diventato potente in questi pochi anni, ma vi basti sapere che la
release 5 costituisce davvero un enorme punto di svolta ed una crescita enorme
di php, vediamo analiticamente perchè:
Php è un linguaggio di programmazione
definito "per oggetti", basato su un motore chiamato "Zend
Engine": questo motore è stato sviluppato e migliorato più
volte negli anni, ma per realizzare php5.0,
i programmatori hanno deciso di riscriverlo ex-novo, creando così "Zend
Engine II"; già da sola, questa novità, giustifica tutta
l'attesa prima della nascita di questa versione, ma le novità vanno anche
oltre:
Vorrei porre molto rilievo sull'implementazione,
in php5, di sqlite, un enviroment che rende oggi PHP molto simile ad ASP: Infatti
fino ad ora, se si voleva incorporare un DataBase sul proprio web senza ricorrere
ad un DB esterno, occorreva ASP appunto, in quanto tale linguaggio incorpora delle
funzionalità Access tali da permettere la creazione di un db che può
essere utilizzato senza doversi interfacciare ad un DBM esterno. Oggi, grazie
a sqlite, anche PHP può incorporare dei database, pienamente compatibili
con mysql.
Altre note importanti sono senza dubbio all'implementazione,
finora assente in php, di metodi pubblici, privati e protetti ed il miglioramento
del parser XML interno.
Le novità non finiscono certamente qui,
ma vi rimando per maggiori spiegazioni al sito web ufficiale di PHP:
, dove potrete leggere tutte le novità di questo ottimo prodotto, potrete
scaricarlo gratuitamente e consultare documentazione ufficiale scritta da sviluppatori
ed utilizzatori nel corso degli anni.
Concludo ricordando una cosa importante, sottolineata
dagli sviluppatori stessi: La migrazione di PHP
verso la versione 5 richiederà tempo, specie ai provider di servizi, e
poichè php5 è PARZIALMENTE INCOMPATIBILE con le
versioni precedenti, consiglio a tutti gli appassionati e gli smanettoni, di approcciare
questa nuova versione con calma, per non scoprire che le nuove features tanto
decantate, perfettamente operative sul web server del vostro PC di casa, poi non
girano sul vostro virtual host ;-)
Penso di aver detto abbastanza, buon PHP a tutti.
|