Увидел свет релиз интерпретатора языка программирования PHP 5.3

30 июня 2009 года

После около двух лет разработки выпущен релиз интерпретатора языка программирования PHP 5.3. Наиболее интересные изменения:

  • Значительное увеличение производительности. Например при сравнении одного из снапшотов php 5.3 и последнего стабильного релиза, было замечено увеличение производительности Drupal на 20%, Qdig на 2%, typo3 на 30%, wordpress на 15%, xoops - на 10%.
  • Namespaces - изолированные от остального кода пространства имен для классов, функций и констант.
  • "Late static binding" - привязка к вызываемому классу, вне контекста наследования (возможность получить имя класса, вызванного для выполнения статического метода);
  • Mysqlnd - новый MySQL драйвер, работающий напрямую с MySQL, без использования libmysql.
  • Из состава пакета удален модуль ext/msql, ext/ereg помечен как устаревший, ext/mhash заменен на ext/hash;
  • Реализован метод __callStatic для организации перегрузки статических методов;
  • Поддержка OpenID
  • Изменение техники округления чисел с плавающей точкой;
  • Возможность определения в ini-файле блоков конфигурации с привязкой к директории и имени хоста, для получения функциональности подобной .htaccess;
  • XSLT профайлинг
  • Многоплатформенный getopt()
  • Поддержка Sqlite3 (расширение ext/sqlite3);
  • Опционально включаемый циклический сборщик мусора;
  • Новый синтаксис для определения строковых блоков, ограниченная поддержка GOTO, оператор "?:";
  • Новые расширения: ext/phar,

ext/intl, ext/fileinfo, ext/enchant;

  • Поддержка замыканий и лямбда-функций;
  • Возможность ведения подробного лога отправки почты через функцию mail(), что полезно для выявления источника спама в системах хостинга, на которых нередко пытаются рассылать спам через взломанные скрипты пользователей. Кроме ведения лога предусмотрена возможность включения в тело письма заголовка с уточнением из какого именно скрипта и от какого пользователя осуществлена отправка;
  • Более 140 исправлений ошибок.

Список несовместимостей и особенности миграции с прошлых версий PHP описаны в документе "Migrating from PHP 5.2.x to PHP 5.3.x". Например, из комплекта поставки удалены расширения ext/mhash (см. ext/hash), ext/msql, ext/pspell (см. ext/enchant), ext/sybase (см. ext/sybase_ct); перемещены в PECL: ext/ming, ext/fbsql, ext/ncurses, ext/fdf; удалена поддержка режима совместимости zend.ze1; у некоторых функций ужесточились требования к передаваемым параметрам.

Источники править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Увидел свет релиз интерпретатора языка программирования PHP 5.3», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.