Přichází trošku jako opozdilec, pro kterého včera večer byla přichystána velkolepá oslava, ale dnes už se hosté rozešli domů. Před rokem a půl byl internet plný článků o klíčových novinkách v PHP 5.3, po neustálém odkládání termínů a méně příjemných změnách nadšení vychladlo.
5 – 4 – 3 – 2 – 1 DOWNLOAD!
Jaké jsou novinky? Podstatné. Vezmu to podle důležitosti:
- podpora jmenných prostorů,
oddělovačem je zpětné lomítko (
Nette\Web\Html
) - late static binding, statické metody konečně ví, nad kterou třídou jsou volány
- lambda funkce a uzávěry (nakonec bez podpory
$this
), metoda__invoke
- overloading pro statické metody via
__callStatic()
- vylepšený garbage collection, který si poradí s cyklickými referencemi
- výjimky mohou odkazovat na předchůdce,
getPrevious()
- nativní driver pro komunikaci MySQL a PHP (z pohledu programátora se API nemění)
- nová rozšíření ext/sqlite3, ext/phar (článek), ext/intl, ext/fileinfo, ext/enchant
- rozšíření syntaxe o zkrácený
ternární operátor
?:
,NOWDOC
agoto
(ajáj) - magická konstanta
__DIR__
nahrazující mantrudirname(__FILE__)
- obrovská řada drobných změn u stávajících funkcí (velmi podrobně u Jakuba)
- rozšířeny schopnosti parseru php.ini (ale omezena flexibilita INI parseru jako takového)
- odstraněn zend.ze1_compatibility_mode
To klíčové přijde v následujících týdnech: jak rychle se PHP 5.3 rozšíří? Vzhledem k tomu, že bylo vyvíjeno jako přirozený nástupce řady 5.2 bez zpětně nekompatibilních změn, šance na brzké rozšíření rozhodně má. Nicméně si myslím, že hostéři budou čekat, až vyjde následující setinková verze. Jako když se u Windows čekává na první service pack.
Historie jim přitom dává za pravdu:
- PHP 5.0.0, které vyšlo s rozdílem 14 dní právě před pěti lety, bylo použitelné cca od verze 5.0.3.
- PHP 5.1.0 existovalo pouhé 4 dny a bylo nahrazeno 5.1.1, za dva týdny 5.1.2.
- PHP 5.2.0 bylo opět případem zabugované verze, kde smutnou roli sehrál Debian.
(Totiž Debian Etch má tuto verzi předinstalovanou a nepochopitelný konzervatismus správců vede k tomu, že odmítají PHP updatovat, bo „jen to, co je v Debianu, je stabilní.“)
Přeji PHP 5.3 rychlý a úspěšný nástup do světa!
Komentáře
Jod #1
Som ja teda zvedavý :)
..konečne sa dá trochu robit aj so statickými metódami
..na ten phar som tiež zvedavý :)
bukaJ #2
Tak hurá!
Jde se nasazovat.
Jiří Knesl #3
Je škoda, že PHP nevyvíjí třeba Microsoft, Sun, nebo IBM apod. Už jsme mohli roky používat 6. :)
Ondrej Ivanic #4
Zacinam zavidiet ludom co si mozu dat na server co chcu. Podobne ako Debian je na tom aj RHEL momentalna verzia PHP je 5.1.nieco a este dlho bude…
Borek #5
Tenhle článek stálo za to navštěvovat průběžně a sledovat, jak se pracuje na odbugování jeho češtiny. Přesně ve stylu PHP :)
David Grudl #6
#5 Borku, kdyby jen tento. On totiž Nucleus nemá funkci náhled a já si chyb všímám až v okamžiku, kdy ho čtu po sobě na blogu. Možná by pomohlo dát si do administrace podobně velké písmo, jako mám tu.
PHX #7
#4 Ondreji Ivanici, jj Debian je konzervativni. Ale nic ti nebrání nainstalovat si novější PHP z testovací verze Debianu.
LesTR #8
#7 PHXi, Testing již není třeba, ve stable je 5.2.6.
Harvie #9
Jo debian je v tomhle debilní. Radši se zabijou v trabantu s poloupadlym kolem, než by si od někoho vzali zadarmo rychlejšího jaguára s NEUPADLYM kolem.
Al #10
#4 Ondreji Ivanici, Taky jsem záviděl. Ještě před třemi měsíci jsem byl nucen pracovat na PHP4.4 a MySql 4.0. Vedení i admin moje požadavky tvrdošíjně odmítali jako ztrátu času – vždyť to přece funguje, poraď si jak umíš.
Teď mám konečně vliv na funkci a tak je na serveru PHP 5.2.9–2. S nasazením 5.3 trochu počkám, co bude.
Salko #11
Neviem, či robím chybu ja,
session.save_path
mám v adresári, ktorý je symlinkovaný na druhý disk, alesession_start()
odmietne fungovať:Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (C:\temp\php\php5.3\sessions) in Unknown on line 0
(Systém WinXP, Apache 2.2).
Pokiaľ je
session.save_path
na nesymlinkovom adresári, tak to funguje… Alebo keď bežím na PHP 5.2.8Jan Kuchař #12
Já zatím PHP 5.3 nenasazuji ani na vývojářskou mašinu, protože
Bedřich #13
Není nad to mít svůj vlastní server a být hostingu poskytovatelem 🙂
Kompilace mi sice chvilku trvala – asi měsíc 😁 , ale teď mám na serveru 5.3.1, heč
Tento článek byl uzavřen. Už není možné k němu přidávat komentáře.