от Андрей(14-07-2004)

След повече от 2 години активна разработка и малко повече от 4 години след излизането на версия 4.0, излезе версия 5.0.0 на популярния скриптов език PHP. 5.0.0 се базира на Zend Engine II (от Зенд са решили да ползват римски цифри за втората версия). ОО модела е подобрен, за разлика от 4.х, където беше просто добавка.

Също така __autoload() е нова функционалност, даваща възможност за зареждане на файлове с необходимите за едно приложение класове, когато са нужни. По този начин се избягва "вмъкването" на всички познати класове, което на конфигурации, които не ползват кеширане на байткода на скриптовете, е голям минус. Такава функционалност е добре дошла също поради факта, че при големи проекти, използващи ОО код, всеки клас се намира в собствен файл.

Поддръжката на ХМL е подобрена, като в момента има 4 разширения, които работят с XML, две от които са в стандартната дистрибуция - DOM и SimpleXML. Тези 2 модула могат да работят един с друг. Обекти на SXML могат да се използват с DOM разширението и обратно. Работата с XML документи е опростена до толкова, че един все едно да се работи с данна от вградените типове. Всичко това благодарение на ZEII.

По отношение на връзката към бази данни е новото разширение ext/mysqli, което има по-изчистен API - процедурен и обектен. Вече съществуващи скриптове използващи ext/mysql, могат да бъдат преобразувани лесно до скриптове, ползващи ОО интерфейса на mysqli. Преобразуването за използване на процедурния интерфейс е по-трудоемко, защото последният не използва "отворени връзки" по подразбиране, както е в ext/mysql. SQLite е вече стандартно разширение и в 5.0.0 идва с последната си излязла версия досега. SQLite работи директно с файлове, но интерфейсът от страна на потребителя е стандартен SQL. Поддържат се транзакции, тригери, изгледи и други и това на цената на 200 килобайта повече към изпълнимият файл на PHP. Трябва да се има впредвид, че използването на SQLite за приложения, имащи голям брой конкурентни четения и записи, е непрепоръчително.

Уеб услугите също се поддържат в 5.0.0 . Разширението за SOAP, което се ползваше от някой потребители с 4.х версиите, бе основно пренаписано. Поради факта, че е написано на С и е компилиран код, дава на производителност немислима при използването на PEAR::SOAP.

Ново разширение също е ext/tidy, използващо libtidy, което е библиотека за "почистване и поправяне" на HTML файлове. Tidy може да се използва дори и като филтър, който ще обработи изхода на скрипт за валидност и да го преобразува във валиден HTML, ако има проблеми, както и има възможност за премахване на ненужни тагове ("компресия").

Повече информация във файла, съдържащ списъка с промените. 14.07 : Малък бъг вкаран при поправянето на проблем със сигурността малко преди официалното пускане на 5.0.0 създава проблем при HTTP основно автенфициране (basic authentication).


<< Излезe PHP 4.3.8 : подобрена сигурност | Допълнителна сигурност в Mozilla, Firefox >>