Megérkezett: PHP 5.3.0
A tegnapi napon egy nagyot ugrottunk, 5.2-ről 5.3-ra váltott a legfrissebb stabil ág. Hosszú fejlesztés után sikerült ide eljutni, így az 5.3 lehetőségeiről már bőven volt időnk beszámolni. Ezek megismétlése helyett Felhővel összegyűjtöttük a témába vágó beszámolókat.
Így például már PHP-ben is elérhetők a névterek (lásd Namespaces has PHP 5.3 és What’s new in PHP 5.3 - part 1: namespaces); nagyobb mozgásterünk van függvények terén a funkcionális programozásból átvett lambda és closure támogatásával; valamint ezentúl a statikus metódus tudni fogja, hogy milyen osztályon lett meghívva (What is new in PHP 5.3 - part 2: late static binding), ezt korábban natívan nem biztosította a nyelv.
A PHP 5.3-ban (ismét) megjelent egy újabb mód a MySQL használatára (What is new in PHP 5.3 - part 3: mysqlnd). Az új verzióval a mérések szerint nagyobb teljesítményt érhetünk el (PHP 5.3: Up to 30% performance win). Számos újdonsággal bővült a Standard PHP Libary: PHP 5.3 SPL data structures: SplStack, SplHeap, SplPriorityQueue, SplDoublyLinkedList, PHP 5.3 SPL goodies: GlobIterator, SplFileObject and CSV files, Data structures in PHP 5.3. Új garbage collectort kapott a nyelv, erről részletesen a php|archtitect aprilisi, májusi és júniusi számában olvashattok.
Mindenképpen szót kell még ejteni az újonnan megjelent i18n kiterjesztésről, az egyszerű archiválási lehetőségről (Introducing PHAR), az új operátorokról (
Ti melyik újdonságot vártátok a legjobban?
■ Így például már PHP-ben is elérhetők a névterek (lásd Namespaces has PHP 5.3 és What’s new in PHP 5.3 - part 1: namespaces); nagyobb mozgásterünk van függvények terén a funkcionális programozásból átvett lambda és closure támogatásával; valamint ezentúl a statikus metódus tudni fogja, hogy milyen osztályon lett meghívva (What is new in PHP 5.3 - part 2: late static binding), ezt korábban natívan nem biztosította a nyelv.
A PHP 5.3-ban (ismét) megjelent egy újabb mód a MySQL használatára (What is new in PHP 5.3 - part 3: mysqlnd). Az új verzióval a mérések szerint nagyobb teljesítményt érhetünk el (PHP 5.3: Up to 30% performance win). Számos újdonsággal bővült a Standard PHP Libary: PHP 5.3 SPL data structures: SplStack, SplHeap, SplPriorityQueue, SplDoublyLinkedList, PHP 5.3 SPL goodies: GlobIterator, SplFileObject and CSV files, Data structures in PHP 5.3. Új garbage collectort kapott a nyelv, erről részletesen a php|archtitect aprilisi, májusi és júniusi számában olvashattok.
Mindenképpen szót kell még ejteni az újonnan megjelent i18n kiterjesztésről, az egyszerű archiválási lehetőségről (Introducing PHAR), az új operátorokról (
?:
, NOWDOC
, goto
) vagy az új E_DEPRECATED
hibaszintről, amely része az E_ALL
-nak. Végezetül, ha valaki az átállást tervezi, az alábbi cikkek támpontot nyújtanak a váltáshoz:Ti melyik újdonságot vártátok a legjobban?
Stáblista
Hodicska (Felhő) Gergely, Török Gábor, Joó Ádám, Heilig Szabolcs
Amúgy szerda van :D
kedd
Csütörtök :)
Migrating from PHP 5.2.x to PHP 5.3.x
Nem production ready
esetleg Zend Server
Programozási hibák
Szerk: a usrportage.de-ről származó ebuilddel a 200812090130-s CVS verziót sikerült leforgatni. Mindjárt megpróbálok egy aktuálisat.
Szerk2: némi hackeléssel csináltam egy stable verziót a kint levő tarballból. Ellenben én úgy érzem, hogy a late static bindig nem igazán akar működni. Valaki ki tudja próbálni?
Szerk3: GC működni látszik, anon függvények is. Namespacek is mennek annyi eltéréssel, hogy a namespace deklarációnak az első parancsnak kell lennie a PHP fájlban, a PHP tag előtt még egy sortörés se lehet.