Mozilla Skin
WIKI nejen pro klienty webhostingu banan.cz, diskuze zde

PHP5

Z BananWiki

V roce 2004 jsme se konečně dočkali další inovace. V PHP4 chybělo mnoho funkcí v objektově orientovaném programování. Rozšíření pro MySQL nepodporovalo novější 4.1 verzi komunikačního protokolu. A o XML ani nemluvě.

PHP5 konečně zlepšuje PHP4 ve třech důležitých oblastech:

Ačkoliv jsou tyto oblasti nejdůležitější, s novou verzí se objevilo i mnoho dalších vylepšení, zde je však nezmíníme.

Nejdůležitější změny dopomáhají k efektivnějšímu, rychlejšímu a pohodlnějšímu psaní kódu.


Obsah

Robustní podpora OOP

Uživatelé požadovali rozšíření podpory OOP. Nyní se mohou těšit z následujících přidaných funkcí:

  • konstruktory
  • destruktory
  • public, protected a private proměnné a metody
  • rozhraní (interface)
  • abstraktní třídy
  • statické proměnné a metody


Navíc jsou objekty vždy přiřazovány a volány pouze odkazem (není třeba přidávat & pro nahrazení volání hodnotou. Děje se tak automaticky.

Pokud při své tvorbě rádi používáte objekty a vzory (patterns), tak je to právě pro vás.

Kompletní přepis MySQL rozšíření

Protože nejeden vývojář tvoří ruku v ruce v PHP a v MySQL, tak bylo třeba s ohledem na vycházející nové verze 4.x a 5.x přepsat i rozšíření komunikující s databází.

Nové rozšíření nabízí:

  • připravené dotazy
  • vázané vstupní a výstupní parametry
  • SSL připojení
  • funkce pro multidotazování


MySQLi (jak je pojmenováno nové rozšíření) využívá i objektového rozšíření pětkové verze a nabízí objektově orientované rozhraní.


Souprava spolupracujícíh XML nástrojů

PHP5 opravuje hlavně problém s XML rozšířením čtyřkové verze. PHP4 umožňuje manipulaci s XML pouze povrchně, PHP5 ne.

  • pracuje dohromady jako celek
  • standardizováno na jedné XML knihovně libxml2
  • plně vyhovuje specifikaci W3 konsorcia
  • efektivně zpracovává data


Protože tvorba aplikací pro web by měla být co nejjednodušší, tak je tu nové XML rozšíření, které umožní jednoduše číst a modifikovat XML dokumenty. Trefný název říká vše SimpleXML. Umožňuje přistupovat k XML datům jako do pole nebo k objektům. Iterace za pomoci foreach konstrukcí a změna hodnoty pouhým přiřazením nové hodnoty.


Pokud znáte formát XML dat, není problém načítat RSS, konfigurační data a podobně.


Fanoušci DOM objektů využijí rozšíření DOM, které je mnoho světelných let vzdáleno od toho, co obsahuje PHP4.


Embedded databáze za pomoci SQLite

Rozhraní, které nepoužívá pro ukládání dat databázi. V některých případech může být výkonější než databáze. Není dobré odvozovat funkce z názvu - Lite - totiž vůbec není. Dokazují to i podporované funkce:

  • transakce
  • poddotazy
  • triggery
  • a mnoho dalších pokročilých databázových funkcí


Také je možné vytvořit vlastní uživatelsky definované funkce, které budou volány z tohoto databázového rozšíření.


Čistější ošetřování výjimek za pomoci výjimek

Úplně nový přístup k ošetřování chyb je zapracován do nového PHP. Místo jednotlivých kontrol je možné používat ošetřování výjimek. Je tak možné lépe oddělit logickou část programování a ošetřování chyb.


Stejně jako v Javě a nebo C++ jej najdete i v novém PHP.


Prvotřídní implementace SOAP

SOAP se stává mnohem častěji nedílnou součástí většiny nových webových služeb. Toto rozšíření umožní vývojářům tvořit SOAP klienty s nebo bez Web Service Description Language (WSDL) a také implementovat SOAP servery.


Iterátory

Kompletně nová vychytávka v PHP5. Pro různé typy dat můžete používat jednoduchý foreach na jejich procházení. Ať se již jedná o výpis adresářů, výsledky databáze a nebo XML dokumenty. SPL - Standard PHP Library - knihovna základních iterátorů, včetně limitů, cacheování, filtrování a modifikaci výsledků jednotlivých iterátorů.


Iterátory jsou výborné pro abstraktnější pohled na nepřehledný detailní kód.