> Ragazzi, ma com'è che non esiste ancora e ci sono già i libri? Non ho
> mica capito, ed è tanto che sono usciti...
Perche` dalla roadmap sembrava dovesse uscire l'anno scorso, ma poi per
vari motivi (principalmente le difficolta` a infilarci dentro UTF8 senza
stravolgere la compatibilita`), si e` deciso per una release intermedia
(5.3) che introducesse alcune delle funzionalita` di PHP6 senza
stravolgere tutto, e preparando il terreno per la 6.
I libri sono usciti "sulla fiducia", e infatti per la gran parte parlano
delle feature di PHP 5.3.
Si iniziano a vedere ora i primi hosting che adottano PHP 5.3 (io
personalmente non l'ho ancora messo sui miei server), quindi presumo che
PHP6 non uscira` prima del 2011, se non in beta/RC.
Bye.
> Il Tue, 29 Dec 2009 11:17:29 +0100, Merlink ha scritto:
>
>> Ragazzi, ma com'è che non esiste ancora e ci sono già i libri? Non ho
>> mica capito, ed è tanto che sono usciti...
>
> Perche` dalla roadmap sembrava dovesse uscire l'anno scorso, ma poi per
> vari motivi (principalmente le difficolta` a infilarci dentro UTF8 senza
> stravolgere la compatibilita`), si e` deciso per una release intermedia
> (5.3) che introducesse alcune delle funzionalita` di PHP6 senza
> stravolgere tutto, e preparando il terreno per la 6.
cosa vuol dire infilarci dentro UTF8?
grazie
--
give it away
> cosa vuol dire infilarci dentro UTF8?
Vuol dire che attualmente tutte le funzioni di elaborazione delle
stringhe di PHP presumono che la stringa sia in ISO-8859-1 (alias Latin1).
Con PHP6, teoricamente perche` ci stanno ancora lavorando, non servira`
piu` usare mb_strlen() per sapere la lunghezza di una stringa UTF8, ma
bastera` il normale strlen()
Questo porta a incompatibilita`, perche` in PHP5, strlen("perché")
ritorna 7, mentre in PHP6 ritorna 6, se usi un editor UTF8 (ormai lo sono
quasi tutti).
Ma e` solo la punta dell'iceberg. Vanno cambiati anche i metodi di
default di connessione ai DB, le funzioni di encoding e decoding delle
stringhe verso altri charset, probabilmente anche le funzioni di
localizzazione (per via dei simboli di valuta, delle virgolette, ecc.)
ecc. ecc.
E` probabile che PHP6 sara` la versione con meno backward compatibility
di sempre. :)
Bye.
> Il Tue, 29 Dec 2009 10:53:12 +0000, majale ha scritto:
>
>> cosa vuol dire infilarci dentro UTF8?
>
> Vuol dire che attualmente tutte le funzioni di elaborazione delle
> stringhe di PHP presumono che la stringa sia in ISO-8859-1 (alias
> Latin1).
E quelle che ritornano una stringa tipo realpath(), number_format() che
codifica utilizzano ?
Ciao.
--
*** Linux user # 198661 ---_ ICQ 33500725 ***
*** Home http://www.kailed.net ***
*** Powered by openSUSE ***
> E quelle che ritornano una stringa tipo realpath(), number_format() che
> codifica utilizzano ?
Onestamente non lo so.
A intuito credo che la realpath() torni esattamente quello che c'e` nel
filesystem, quindi se e` utf8 lo torna in utf8, se e` win1252 lo torna in
win1252.
number_format() torna numeri e caratteri ASCII (punto e virgola), quindi
la codifica e` esattamente la stessa in tutti i charset (tranne forse il
KOI8 e i vari *JIS). Se gli specifichi caratteri non ASCII come
separatori, usa esattamente quelli che gli metti, con la codifica che usi.
Bye.
una domanda mi sorge spontanea:
ma possibile che non ci siano arrivati alla versione 1 che forse era il caso
di passare a utf-8?
mi pare proprio grottesco.
ma forse ai tempi utf-8 era considerato esotico, non so proprio.
ciao
--
give it away
> ma possibile che non ci siano arrivati alla versione 1 che forse era il
> caso di passare a utf-8?
La versione 1 di PHP era una serie di script in Perl, cosi` come la 2.
Solo dalla 3 e` diventato un modulo di apache scritto in C. E lo standard
del C (e di Linux) all'epoca era il Latin1. E ringraziamo che non sia
nato su piattaforma Microsoft, altrimenti avremmo la IBM850. :P
Anche lo standard delle pagine web fino a 2 anni fa era Latin1, e PHP si
e` sempre adeguato piu` all'uso comune che alle ultime novita` degli
ambienti universitari.
Ancora oggi un buon 20-30% di pagine web NASCE come Latin1, purtroppo (e
sto parlando anche di grosse aziende e su piattaforma .Net, ma non vi
posso dire il nome :P)
A me sarebbe piaciuto di piu` avere gia` PHP5 in utf8, ma gia` ha rotto
pochissimo la compatibilita` (mettendo register_globals di default) e ci
hanno messo 4 anni ad adottarlo tutti. Se fosse passato direttamente a
utf8 probabilmente avrebbe rischiato l'estinzione (o il fork della
versione 4 per trascinarla avanti negli anni)... :)
Bye.
a presto
--
give it away
> A me sarebbe piaciuto di piu` avere gia` PHP5 in utf8, ma gia` ha
> rotto pochissimo la compatibilita` (mettendo register_globals di
> default) e ci hanno messo 4 anni ad adottarlo tutti. Se fosse passato
> direttamente a utf8 probabilmente avrebbe rischiato l'estinzione (o il
> fork della versione 4 per trascinarla avanti negli anni)... :)
Questa non la capisco tanto, il supporto a utf8, potevano inserirlo
opzionale, magari facilmente abilitabile.
Sarebbe stato un passaggio indolore o quasi, mentre con la 6,
probabilmente ci saranno rogne..
mah..