tekst niedokończony
Unicode
Dodanie wsparcia dla unicode z zachowaniem kompatybilności wstecz zapowiada się na bardzo, bardzo irytujący aspekt PHP. Teraz każdy string będzie albo 8—bitową kupą bajtów albo ciągiem UTF—16.
Dziwi mnie wybór UTF—16 ponad UCS—2 albo UTF—8. UTF—16 ma zmienną ilość bajtów na znak, ale minimum to 2. Czyli ma wady UTF—8 (niemożność odczytania n-tego znaku bez skanowania wszystkich poprzednich) i UCS—2 (marnowanie pamięci w tekście opartym na alfabecie łacińskim).
Brak syfu
Wywalono wsparcie dla register_globals, magic_quotes, safe_mode i innych wynalazków stworzonych pod kątem amatorów. Jeśli jeszcze tworzysz kod ze stripslashes() — najwyższy czas przestać.
Zablokowano także pare starych hacków trzymanych dla kompatybilności z błędnym/przestarzałym kodem (najwięcej związanych z przekazywaniem przez referencję wszystkiego, co popadnie).
Dzięki temu PHP będzie nieco elegantszym językiem/środowiskiem.
__toString() wszędzie
Wreszcie echo $obiekt i echo "".$obiekt będą działały tak samo dobrze.
W planach
- Wsparcie dla dowolnie dużych liczb. Zamiast przepełniać int liczby będą promowane do złożonego typu radzącego sobie z dowolną wielkością. MAX_INT+1 da MAX_INT+1, a nie —1.
- IPv6
Podsumowując: nic rewolucyjnego. PHP6 na razie będzie mniej upierdliwą wersją PHP5, ale nadal od strony projektowej będzie językiem drugiej kategorii z wszechobecnym $this-> i grochem z kapustą zamiast normalnej biblioteki standardowej.
