PHP (98) - PHP 5.

Jaká je PHP 5? Vyplatí se přejít na ni co nejdříve?

31.1.2005 15:00 | Petr Zajíc | přečteno 36039×

Před nedávnem oficiálně vyšla verze PHP 5. Co nového nás v ní čeká? A je potřeba udělat přechod z "čtyřkové" verze na "pětkovou" co nejdříve?

Historie verzí PHP

Jak prochází PHP vývojem, objevují se nové verze. Číslo hlavní verze jazyka však zatím bylo změněno pouze čtyřikrát. Připomeňme si, že PHP 1 (i když se to vlastě jmenovalo PHP/FI, personal home page/form interpreter) vyšlo již v roce 1995. Verze PHP 2 byla uvolněna v listopadu 1997 a zaznamenala už výraznější úspěch. V červnu 1998 byla potom uvolněna verze PHP 3.0, která způsobila onen boom okolo používání PHP.  V této souvislosti stojí za zmínku, že PHP 3.0 bylo modulární a daly se k němu "připisovat" například knihovny pro připojení databází. Možná právě to způsobilo, že se "trojkové" verze PHP tak rozšířily.

Nicméně, stále se pohybujeme v roce 1998, takže v době, kdy byl psán tento článek, již uběhlo od vydání "trojky" více než 6 let. Zjistilo se například, že moduly jsou hezká věc, ale v kombinaci s více uživateli jednoho stroje s PHP se celé zpracování požadavků dosti výrazně zpomaluje. Proto byla v květnu roku 2000 uvolněna úplně nová verze PHP (4.0), která obsahovala zcela přepracované a tudíž rychlejší jádro Zend.

Pozn.: Pokud by to někoho zajímalo - bylo toho dosaženo změnou filozofie zpracování souboru. PHP 3 zpracovávalo zdrojový kód sekvenčně, PHP 4 jej celý zkompiluje a pak spustí. Čím je skript delší a složitější, tím je nárůst výkonu mezi PHP4 a PHP3 výraznější.

Když už jsme se ponořili do historie, vybírám namátkou některé podstatnější změny, které přineslo PHP 4:

Většina těchto změn byla přijata kladně komunita vývojářů je začala okamžitě používat. Například sessions se staly nedílnou součástí mnoha dnešních aplikací. Podívejme se nyní na změny, které přineslo PHP 5, vydané oficiálně v polovině roku 2004.

PHP 5

PHP 5 přineslo celou řadu změn a vylepšení. Některá podstatnější uvádím níže.

Vylepšené jádro zend-engine II
Toto jádro obsahuje spoustu nových funkcí, zejména pokud se jedná o práci s objekty. Zvídaví uživatelé se mohou podívat na stránky projektu ZEND, kde se dozvědí detaily.

Nové vlastnosti objektů
Pokud chcete v PHP pracovat s objekty (nebo, pokud jste to chtěli již dávno, ale zjistili jste, že to u náročnějších aplikací není skoro vůbec možné), PHP5 vám přináší mnoho nových vlastností. Můžete používat privátní, chráněné a veřejné proměnné, zlepšené je použití konstruktorů a destruktorů. Je zavedena podpora interface a abstraktních tříd.

Vylepšená práce s chybami
Moderní programovací jazyky mají tzv. strukturovanou správu chyb. PHP5 nabízí sice odlehčenou, přesto však strukturovanou správu chyb pomocí třídy Exception. Existují bloky try {} a catch {} (nikoli však finaly{}).

Kompletně přepsaná podpora XML
To je jedna z nejlepších zpráv kolem nové verze. PHP 5 spolupracuje s knihovnou libxml2 (vyvinutou původně pro Gnome) a navíc přináší rozhraní SimpleXML. Simple XML je rozhraní pro zpracování dokumentů XML, které načte informace z XML dokumentu do hierarchicky uspořádaných objektů, což je jak rychlé na napsání, tak rychlé na pochopení. (Zde je příklad).

Sada pro připojení MySQL 4.1
Pro připojení k MySQL 4.1 bylo vyvinuto v PHP 5 rozhraní mysqli. Je to rozhraní objektové, takže napříště budete moci psát skripty pro připojení k MySQL databázi objektově. (To samozřejmě můžete už teď pomocí vlastních tříd nebo tříd z knihoven třetích stran).

Pozn.: Tato vlastnost jazyka PHP je v současné době době považována za hodně kontroverzní. Za všechny nepokojené uvádím například následující úvahu.

Zabudovaná podpora SQLite
PHP 5 má zabudovanou podporu SQLite. SQLite je velmi skromný (co do nároků na systém) databázový engine používající pro celou databázi jeden soubor. Není to tedy databázový server ve stylu např. MySQL, ale na jednodušší úlohy je velmi svižný a ve webových aplikacích si jistě najde své místo. Více o SQLite se dozvíte na stránkách projektu.

Iconv
Hurá! Funkce pro konverzi znakových sad jsou součástí PHP5 interně, takže se nebudou muset instalovat a konfigurovat zvlášť.

Upgradovat ?

Vydání nové verze PHP vždy přináší otázku: upgradovat, či ne? A jak brzy? Na produkčních serverech tuto otázku samozřejmě budou řešit nejspíše administrátoři. Pro programátory je dobré vědět, že existují freehostingové projekty (například www.php5.cz), kde si mohou své aplikace běžící v PHP5 vyzkoušet.

Bohužel se nepodařilo zachovat zpětnou kompatibilitu mezi PHP4 a PHP5 ze sta procent. Znamená to, že přinejmenším některé skripty bude třeba před jejich nasazením na PHP5 přepsat. Budou to typicky skripty pracující s databází či skripty využívající zpracování XML pomocí DOM.

To, jaký význam bude mít PHP5 na komunitu kolem vývoje webu je ještě obtížné s určitostí předpovědět. My se v dalším díle seriálu zaměříme na obecnější úvahu - jaká bude úloha PHP v budoucnu a nakolik se touto technologií vyplatí zabývat.

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=666