Измененные функции
Ядро PHP
-
set_error_handler() теперь может быть
вызвана с параметром
null
, что сбросит установленные ранее обработчики. -
Если вызвать set_error_handler() и
set_exception_handler() с параметром
null
, они вернут последний обработчик ошибки или исключения соответственно. -
json_encode() теперь принимает
параметр
depth
. - Поведение pack() и unpack() с кодами формата "a" и "A" изменено. Детальное описание данного изменения.
intl
- MessageFormatter::format() и сопутствующие функции теперь принимают именованные аргументы и смешанные числовые и именованные аргументы, когда PHP слинкован с ICU 4.8 или выше.
- MessageFormatter::format() и сопутствующие функции больше не генерируют ошибку, если передано недостаточное количество аргументов. Вместо этого, поля для замещения не будут заменены.
- MessageFormatter::format() и MessageFormatter::parse() больше не ограничены в точности секундами, когда имеют дело со временем.
-
IntlDateFormatter::__construct() и
datefmt_create() теперь принимают
объекты IntlTimeZone и
DateTimeZone для аргумента
timezone
, и объекты IntlCalendar для аргументаcalendar
. Более того, если временная зона не задана и не указана вcalendar
, в качестве временной зоны ICU по умолчанию будет использовано значение date_default_timezone_get(). -
IntlDateFormatter::getCalendar() и
datefmt_get_calendar() возвращают
false
если объект IntlDateFormatter был создан с помощью IntlCalendar, вместо использования одной из констант IntlDateFormatter. - IntlDateFormatter::setCalendar() и datefmt_set_calendar() теперь принимают объекты IntlCalendar в дополнение к константам IntlDateFormatter.
- IntlDateFormatter::format() и datefmt_format() теперь принимают объекты IntlCalendar.