Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

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

После года разработки представлен релиз языка программирования PHP 7.3. Новая ветка включает серию новых возможностей, а также несколько изменений, нарушающих совместимость.

Ключевые улучшения в PHP 7.3:

  • Реализован гибкий синтаксис многострочной вставки (строки heredoc и nowdoc), не требующий обязательного перевода строк после маркера окончания блока и допускающий выравнивание отступами;
  • Добавлена поддержка назначения ссылок в list(): теперь поддерживается синтаксис "list($a, &$b) = $array;", эквивалентный присвоению "$a = $array[0]; $b =& $array[1];". Предложен также упрощённый синтаксис присвоения, позволяющий указывать вместо "list()" квадратные скобки, например "[$a, &$b] = $array;"
  • При вызове функций и методов теперь допускается оставление запятых в конце списка аргументов, например, "unset($foo, $bar, $baz,)";
  • Расширение PCRE переведено на ветку PCRE2;
  • Выражение "instanceof" теперь допускает указание литералов в качестве первого операнда (в такой ситуации результат всегда будет FALSE);
  • Добавлено новое исключение CompileError, наследуемое от ParseError и генерирующее для некоторых типов ошибок перехватываемое событие CompileError вместо фатальной ошибки;
  • Значительно расширены возможности и увеличена производительность дополнения MBString, в том числе добавлены полноценные средства для манипуляций с регистром символов (MB_CASE_LOWER, MB_CASE_UPPER, MB_CASE_TITLE, MB_CASE_FOLD и т.п.), до версии 11 обновлена поддержка спецификаций Unicode, добавлена поддержка строк, размером больше 2 Гб, в функциях mb_ereg_*() добавлена поддержка именованного захвата элементов. Объявлены устаревшими вызовы mbereg_*(), вместо которых следует использовать corresponding mb_ereg_*();
  • В SAPI-модуль FPM добавлены новые глобальные опции log_limit и log_buffering для ограничения размера выводимой в лог строки и включения режима записи в лог без буферизации. Также добавлена опция decorate_workers_output, позволяющая отключить декорирование вывода от рабочих процессов при активации режима catch_workers_output;
  • В расширении LDAP в большинстве функций, таких как ldap_add и ldap_read, появился параметр serverctrls для отправки на сервер дополнительных сообщений (LDAP Controls - механизм расширения операций LDAP и передачи дополнительной информации вместе с запросом), а в ldap_parse_result для получения клиентом дополнительных сообщений от сервера. Налажена поддержка режимов LDAP_OPT_SERVER_CONTROLS и LDAP_OPT_CLIENT_CONTROLS в функциях ldap_get_option и ldap_set_option;
  • В заголовок страницы phpinfo(), добавлено отображение переменной PHP_VERSION;
  • В расширение Date добавлен метод DateTime::createFromImmutable();
  • В расширение GD в функции imagecreatefromstring() появилась поддержка создания изображений в формате WebP;
  • При сборке с опцией configure --with-password-argon2 в функциях password_hash(), password_verify(), password_get_info() и password_needs_rehash() обеспечена поддержка алгоритмов хэширования паролей Argon2i и Argon2id;
  • Добавлена функция hrtime() для вывода значения времени (число секунд и наносекунд) на основании показаний монотонного таймера, отражающего неразрывно увеличивающееся время, прошедшее с определённого момента в прошлом;
  • Представлена новая функция net_get_interfaces() для получения информации о доступных сетевых интерфейсах;
  • Улучшена работа сборщика мусора;
  • Переписана на PHP утилита ext_skel (генерирует шаблоны кода дополнений), для запуска которой теперь не нужно дополнительных зависимостей и её можно запускать в том числе в Windows ('php ext_skel.php');
  • Объявлено устаревшим определение имён констант не чувствительных к регистру (определялись при помощи указания в define специального флага).
  • Приведены к соответствию с поведением Unix операции открытия файлов в Windows: файловые дескрипторы теперь по умолчанию открываются в Windows в режиме, допускающем чтение, запись и удаление (открытые файлы теперь можно удалить);
  • Прекращена поддержка платформы BeOS.

OpenNET

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...