Изменённые функции
Ядро PHP
-
getopt() имеет третий, необязательный,
параметр, в который записывается индекс, на котором
остановилась обработка. Переменная в этот параметр
передаётся по ссылке.
-
В getenv() больше не обязательно
передавать параметр. Если параметр не задан, то возвращаются
все текущие переменные окружения в виде
ассоциативного массива.
-
get_headers() теперь имеет
дополнительный параметр для разрешения передачи
определённого пользователем потокового контекста.
-
output_reset_rewrite_vars() больше
не сбрасывает сессионные переменные перезаписи URL.
-
parse_url() теперь более требовательна и
поддерживает RFC3986.
-
unpack() теперь имеет третий
необязательный параметр для определения смещения с
которого начинать распаковку.
Файловая система
-
file_get_contents() теперь принимает отрицательные значения
смещения начала поиска, если поток поддерживает смещения.
-
tempnam() теперь выдаёт уведомление
при возврате в системный временный каталог.
JSON
-
json_encode() теперь принимает новую
опцию,
JSON_UNESCAPED_LINE_TERMINATORS
,
для запрещения экранирования символов U+2028 и U+2029
когда передаётся
JSON_UNESCAPED_UNICODE
.
Многобайтовые строки
-
mb_ereg() теперь отклоняет
некорректные последовательности байтов.
-
mb_ereg_replace() теперь отклоняет
некорректные последовательности байтов.
PDO
-
PDO::lastInsertId() для
PostgreSQL теперь порождает ошибку, если в текущей
сессии (соединении) не вызван
nextval
.
PostgreSQL
-
pg_last_notice() теперь принимает
необязательный параметр, задающий операцию.
Используется одна из следующих констант:
PGSQL_NOTICE_LAST
,
PGSQL_NOTICE_ALL
или
PGSQL_NOTICE_CLEAR
.
-
pg_fetch_all() теперь принимает
второй, необязательный, параметр для задания типа
результата (аналогично третьему параметру
pg_fetch_array()).
-
pg_select() теперь принимает
четвёртый, необязательный, параметр для задания типа
результата (аналогично третьему параметру
pg_fetch_array()).