Налаштування під час виконання

Поведінка цих функцій залежить від установок у php.ini.

Установки PHP/Параметри конфігурації інформації

ИмяПо умолчаниюМесто измененияСписок изменений
assert.active"1"INI_ALLЗастаріло з PHP 8.3.0
assert.bail"0"INI_ALLЗастаріло з PHP 8.3.0
assert.warning"1"INI_ALLЗастаріло з PHP 8.3.0
assert.callbackNULLINI_ALLЗастаріло з PHP 8.3.0
assert.quiet_eval"0"INI_ALLВилучено у PHP 8.0.0
assert.exception"1"INI_ALLДо PHP 8.0.0 значення за промовчанням було "0". . Застаріло з PHP 8.3.0
enable_dl"1"INI_SYSTEMЦя можливість застаріла та будевидаленов будущем.
max_execution_time"30"INI_ALL
max_input_time"-1"INI_PERDIR
max_input_nesting_level"64"INI_PERDIR
max_input_vars1000INI_PERDIR
zend.enable_gc"1"INI_ALL

Додаткова інформація та опис режимів INI_* дано у розділі «Місця встановлення параметрів конфігурації».

Коротке пояснення конфігураційних директив.

assert.activebool

Увімкнення виконання assert(). . zend.assertions замість цього слід використовувати для управління поведінкою функції assert()

Увага

Ця функціональність оголошена застарілої починаючи з PHP 8.3.0 і її украй не рекомендується використовувати.

assert.bailbool

Завершення роботи скрипта під час провалу перевірки тверджень.

Увага

Ця функціональність оголошена застарілої починаючи з PHP 8.3.0 і її украй не рекомендується використовувати.

assert.warningbool

Виклик попереджень PHP для кожної проваленої перевірки затвердження.

Увага

Ця функціональність оголошена застарілої починаючи з PHP 8.3.0 і її украй не рекомендується використовувати.

assert.callbackstring

функція користувача, що викликається при провалі перевірки тверджень.

assert.quiet_evalbool

Увага

Ця функціональність була ВИДАЛЕНО у PHP 8.0.0.

Використовуйте це налаштування функції error_reporting() під час виконання перевірки тверджень. При увімкненні налаштування повідомлення про помилки під час перевірки тверджень не відображатимуться (неявний виклик error_reporting(0)). Якщо налаштування вимкнено, помилки будуть видаватися відповідно до налаштувань error_reporting()

assert.exceptionbool

Викидає виняток AssertionError у разі невдалої перевірки затвердження.

Увага

Ця функціональність оголошена застарілої починаючи з PHP 8.3.0 і її украй не рекомендується використовувати.

enable_dlbool

Директива дозволяє вмикати та вимикати динамічне підвантаження модулів PHP за допомогою функції dl()

Головною причиною, через яку потрібно вимкнення динамічного завантаження, є безпека. За допомогою динамічного завантаження можна обійти все open_basedirограничения. По умолчанию динамическая загрузка разрешена.

max_execution_timeint

Ця директива визначає максимальний час у секундах, протягом якого скрипт повинен повністю завантажитися. Якщо цього немає, парсер завершує роботу скрипта. Цей механізм допомагає запобігти зависанню сервера через погано написаний скрипт. За промовчанням на завантаження дається 30секунд. Если PHP запущен изкомандного рядка, це значення за умовчанням дорівнює

У системах, відмінних від Windows, на максимальний час не впливають системні виклики, потокові операції тощо. За додатковою інформацією звертайтесь до документації до функції set_time_limit()

Веб-сервери зазвичай мають свої налаштування часу очікування, після перевищення якого самі завершують виконання скрипта PHP. В Apache є директива TimeoutУ IIS є функція CGI timeout. В обох випадках за промовчанням встановлено 300 секунд. Точне значення можна дізнатися з документації до веб-сервера.

max_input_timeint

Ця директива визначає максимальний час у секундах, протягом якого скрипт повинен розібрати всі вхідні дані, передані запитами на кшталт POST або GET. Цей час вимірюється з моменту, коли PHP викликаний на сервері до моменту, коли скрипт починає виконуватися. Значення за замовчуванням -1що означає, що буде використовуватися max_execution_time. Якщо встановити рівним , то обмежень у часі не буде.

max_input_nesting_levelint

Задає максимальну глибину вкладеності вхідних змінних (тобто $_GET $_POST

max_input_varsint

Скільки вхідних змінних може бути прийнято в одному запиті (обмеження накладається на кожну з глобальних змінних $_GET, $_POST та $_COOKIE окремо). Використання цієї директиви знижує ймовірність збоїв у разі атак із використанням хеш-колізій. Якщо вхідних змінних більше, ніж встановлено директивою, викидається попередження **E_WARNING**а всі наступні змінні в запиті ігноруються.

zend.enable_gcbool

Включає або вимикає збирач циклічних посилань.