getopt() имеет третий, необязательный,
параметр, в который записывается индекс, на котором
остановилась обработка. Переменная в этот параметр
передается по ссылке.
В getenv() больше не обязательно
передавать параметр. Если параметр не задан, то возвращаются
все текущие переменные окружения в виде
ассоциативного массива.
get_headers() теперь имеет
дополнительный параметр для разрешения передачи
определенного пользователем потокового контекста.
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()).
Сессии
session_start() теперь возвращает false и больше не инициализирует $_SESSION, когда она
не смогла запустить сессию.