Нові можливості

Новий тип object

Було введено новий тип, object, який може використовуватися в параметрах, що передаються (контраваріантність) і повертаються значеннях (коваріантність) для будь-яких об'єктів.

Loading...

Завантаження модуля на ім'я

Для підвантажуваних модулів більше не потрібно вказувати розширення файлу (.soдля Unix или.dll для Windows). Це допускається у файлі php.ini, а також функції dl()

Дозволено перевизначення абстрактних методів

Абстрактні методи тепер можна перевизначити, якщо абстрактний клас успадковується від іншого абстрактного класу.

Loading...

Sodium тепер є основним модулем

Сучасна криптографічна бібліотека Sodium тепер стала основним модулем PHP (як модуль sodium).

Смотрите разделSodium для отримання повної інформації.

Додано хешування пароля за допомогою Argon2

Було додано алгоритм Argon2 в API хешування пароля, де доступні такі константи:

  • PASSWORD_ARGON2I
  • PASSWORD_ARGON2_DEFAULT_MEMORY_COST
  • PASSWORD_ARGON2_DEFAULT_TIME_COST
  • PASSWORD_ARGON2_DEFAULT_THREADS

Розширені типи рядків для PDO

Тип рядка PDO був розширений для підтримки національних наборів символів при емуляції запитів, що готуються. Додані нові константи:

  • PDO::PARAM_STR_NATL
  • PDO::PARAM_STR_CHAR
  • PDO::ATTR_DEFAULT_STR_PARAM

Ці константи використовують у побітовому OR з константою PDO::PARAM_STR :

Loading...

Додаткова налагоджувальна інформація при емуляції запитів, що готуються PDO

МетодPDOStatement::debugDumpParams() було оновлено, щоб увімкнути SQL до відправки в БД, де буде показаний повний необроблений запит (включаючи замінені параметри зі своїми пов'язаними значеннями). Це було додано для допомоги у налагодженні емуляції запитів, що готуються (і тому це буде доступно тільки при включеній емуляції підготовлюваних запитів).

Підтримка розширених операцій на LDAP

Було додано підтримку EXOP модуль LDAP. Стали доступні такі функції та константи:

Информация об адресе в модулесокетів

Модуль сокетів має можливість шукати адресну інформацію, а також підключатися до неї, зв'язуватися з нею і пояснювати її. Для цього були додані такі чотири функції:

Розширення типу параметра

Типи параметрів із перевизначених методів та реалізацій інтерфейсів тепер можуть бути опущені. Це все ще відповідає LSP, оскільки параметри типів є контраваріантними.

Loading...

Дозволена завершальна кома для згрупованих просторів імен

Завершальна кома тепер може бути додана до синтаксису угруповання use, що з'явився в PHP 7.0.

Loading...

Поддержкаproc_nice()для Windows

Функцияproc_nice() тепер підтримується у Windows.

Поддержка порядка байт вpack() і unpack()

Функції pack() і unpack() тепер підтримують типи float та double як у прямому, так і у зворотному порядку байт.

Улучшения в модулеEXIF

Модуль EXIF ​​оновлено для підтримки більшої кількості форматів. Це означає, що специфічні теги правильно обробляються при розборі зображень функцією exif_read_data(). Нові формати, що підтримуються:

  • Samsung
  • DJI
  • Panasonic
  • Sony
  • Pentax
  • Minolta
  • Sigma/Foveon
  • AGFA
  • Kyocera
  • Ricoh
  • Epson

Функції exif_read_data() і exif_thumbnail() тепер приймають потоки як свої перші аргументи.

Нова функціональність у PCRE

  • Доданий модифікаторJдля встановлення PCRE_DUPNAMES.

SQLite3 дозволяє записувати BLOB

Тепер SQLite3::openBlob() вміє відкривати поля типу BLOB для запису. Раніше для таких полів було доступне лише читання.

Зворотні дзвінки Oracle OCI8Transparent Application Failover

Добавлена поддержказворотних викликів Oracle Database Transparent Application Failover (TAF). TAF дозволяє програмам PHP OCI8 автоматично перепідключатися до попередньо налаштованої бази даних при порушенні з'єднання. Нова підтримка зворотного дзвінка TAF дозволяє програмам відстежувати та контролювати перепідключення під час відновлення.

Улучшения в модулеZIP

Додано підтримку читання та запису зашифрованих архівів (потрібно libzip 1.2.0).

КлассZipArchive тепер реалізує інтерфейс Countable

Потокzip:// тепер приймає контекстну опцію 'password'