PHP 5.5: wijzigingen en vervallen functies.

Artikel aangemaakt: 06-08-2014 | Artikel gewijzigd: 06-08-2014

Met de introductie van PHP 5.5. is PHP een nieuwe weg ingeslagen waarbij de performance behoorlijk is verbeterd tot wel 20%,

Er zijn na een upgrade naar deze versie (ten opzichte van PHP 5.4.) wel enkele zaken waarmee je rekening moet houden.

  • PHP voor Windows XP en 2003 zijn niet langer ondersteund. Dit betekent dat je minimaal Windows Vista of nieuwer moet draaien om een webserver met PHP te kunnen hosten.
  • Hoofdlettergebruik voor functies, classes en constanten is niet langer afhankelijk van de land instellingen en wordt bepaald door de ASCII standaarden. Dit zorgt voor een betere support voor talen die gebaseerd zijn op het Latijn. Deze wijziging kan beteken dat code die gebruik maakt van hoofdletters niet langer functioneert, of anders dan bedoeld.
  • Het pack() en unpack() commando is gewijzigd, zodat deze beter aansluit bij Perl (Perl wordt overigens niet ondersteund door InternetToday).
    • pack() ondersteund nu ook "Z" format code, welke zich het zelfde gedraagt als "a".
    • unpack() ondersteund nu ook "Z" format code voor NULL padded strings en gedraagt zich hetzelfde als "a" in vorige versies: het stript gevonden NULL bytes.
    • unpack() behoud gedetecteerde ASCII NULL bytes wanneer het "a" format wordt gebruikt.
    • unpack() stript alle gedetecteerde ASCII whitespace wanneer het "A" format wordt gebruikt.
  • Voor PHP 5.5. bestonden er gevallen waarbij de self, parent en static keywords hoofdlettergevoelig werden behandeld. Dit probleem bestaat niet langer omdat keywords altijd hoofdletter ongevoelig worden behandeld. Voorbeeld: SELF::CONTSTANT is het zelfde als self::CONSTANT.
  • PHP logo GUIDs  die voorheen resulteerde in diverse logo's zijn verwijderd uit PHP.
  • Programmeurs die extentions schrijven moeten rekening houden met het feit dat de zend_execute() functie niet langer overschreven kan worden en dat er diverse wijzigingen zijn geweest aan de execute_data structuur en gerelateerde functies en 'method handling opcodes'. De meeste extensies zullen niet geraakt worden door deze wijziging, echter wordt aan auteurs van extensies die gebruik maken van de Zend engine aanbevolen de  release notes te lezen.
Afzender:
Ontvanger: