Alte îmbunătățiri
-
Managerul îmbunătățit al memoriei și limita implicită mărită a memoriei.
Noul manager al memoriei alocă mai puțină memorie și lucrează mai rapid
decât încarnarea precedentă. El alocă memorie din sistem în blocuri largi
și apoi gestionează grămada (heap) independent. Valoarea
memory_limit din php.ini este verificată nu la
fiecare apel emalloc() (ca înainte), dar pentru
blocurile de facto cerute de la sistem. Aceasta înseamnă că
memory_limit este mult mai exact decât era, deoarece
vechiul manager al memoriei nu calcula tot necesarul de memorie utilizat
de biblioteca malloc.
Datorită acestei precizii obținute utilizarea memoriei poate părea să se
fi mărit, cu toate că, de fapt, nu este așa. Pentru a acomoda această
mărire aparentă, valoarea implicită a memory_limit de
asemenea a fost mărită - de la 8 la 16 megaocteți.
-
S-a adăugat susținerea constructorilor în interfețe pentru a forța
verificarea semnăturilor constructorilor în implementări.
Începând cu PHP 5.2.0, interfețele pot avea constructori. Însă dacă
alegeți să declarați un constructor într-o interfață, fiecare clasă ce va
implementa această interfață TREBUIE să includă un constructor cu o
semnătură identică cu acea a constructorului din interfața de bază. Prin
'semnătură' se înțeleg definițiile tipurilor parametrilor și a valorii
întoarse, inclusiv orice fel de indicatori expliciți ai tipurilor și
faptul dacă datele sunt transmise prin referință, sau prin valoare.