Már igényelheted a PHP 5.3-at!

Ha weboldaladat PHP 5.3 alatt szeretnéd nálunk futtatni, jelezheted ezt ügyfélszolgálatos munkatársainknak, akik készséggel állnak rendelkezésedre. Elemezzük ki egy kicsit, miért is érdemes ezt a verziót választanod.

PHP 5.3 újdonságok

  • Névterek támogatása – mely jobban struktúrálhatóvá teszi a programod, és elkerülhetőek a névtér ütközés kellemetlen mellékhatásai, amik igen bosszantóak tudnak lenni, mert nehéz megtalálni, hogy hol hivatkoztad azt a változót korábban.
  • Késői statikus kötés megjelenése, mely lehetővé teszi, hogy a statikus metódusoknál is alkalmazható legyen az örököltetés a static kulcsszó
    alkalmazásával a self kulcsszó helyett. Ennek részletes magyarázatát példával szemléltetve itt találhatod meg: http://www.php.net/manual/en/language.oop5.late-static-bindings.php
  • Megjelent a jump címkék alkalmazása (limitált goto funkcionalitás), amit én személy szerint inkább visszalépésnek tekintek, mert
    a goto alkalmazása nemcsak hogy mind a funkcionális mind az OO paradigmákkal szembe megy, de nagy veszélyeket is
    rejthet alkalmazása, mert átláthatatlanná és kezelhetetlenné tehető vele a kód. Részletes bemutatása itt érhető el: http://www.php.net/manual/en/control-structures.goto.php
  • Nowdoc kulcsszó és funkcionalitás, mely a Heredoc funkcionalitást egészíti ki, és ezáltal bármilyen statikus adat kontextusban használható,
    akár egy tömb inicializálásakor is.
  • A kivételkezelés egymásba ágyazhatóvá vált ettől a verziótól kezdődően, ami nagy előrelépés az OO szemlélet irányában.
  • Körkörös hivatkozásokhoz egy garbage collector, tehát szemétgyűjtő implementálva lett, ezáltal a körkörösen hivatkozott, de már nem használt változók is szépen felszabadulnak, nem maradnak bent a memóriában feleslegesen.

Hibajavítások, frissítések

  • A PCRE, Reflection és SPL kiterjesztés állandó elérhetőségének biztosítása
  • A dátumokkal való számolást és a dátumkezelést megkönnyítő dátum és időfüggvények hozzáadása
  • Acrypt(), hash() és md5() funkció működésének, illetve az OpenSSL kiterjesztésnek a továbbfejlesztése
  • A Zend motor finomhangolásának folytatása a gyorsabb PHP-futási sebesség és memóriahasználat érdekében
Figyelem!

Előfordulhat, hogy a korábbi verzióval tökéletesen működő kód PHP 5.3 alatt nem fog megfelelően üzemelni. Ez az egyik ok, amiért nem álltunk át automatikusan minden szerverünkön 5.3 ra, mert nem szeretnénk, ha emiatt hiba lenne a weboldaladban, vagy fennakadást okozna. Ezért fogjuk, ameddig csak lehet, támogatni az 5.2.x verziót, és csak külön kérés esetén 5.3.x et biztosítani.

Ha szeretnél áttérni 5.2.x ről 5.3.x re, akkor az alábbi inkompatibilitásokra kell odafigyelj (a teljesség igénye nélkül): (teljes lista itt: http://www.php.net/manual/en/migration53.incompatible.php)

  • call_user_func() függvénycsalád viselkedése változott, ami hibákat eredményezhet
  • A tömbkezelő függvények natsort(), natcasesort(), usort(), uasort(), uksort(), array_flip(), and array_unique() nem fogadnak objektumokat az 5.3 ban, az 5.2 vel szemben
  • A referencia szerinti paramétereket váró függvények korábban működtek érték szerinti átadás esetében is, ez az 5.3 tól kezdve hibát eredményez
  • A __toSting magic method nem fogad 5.3 tól kezdődően paramétereket
  • A goto és a namespace mostantól foglalt szavak.

Te igénybe vennéd ezt a szolgáltatást? Pro- és kontra véleményekre is kíváncsiak vagyunk, várjuk a hozzászólásokat!

 

Oszd meg a gondolataidat