&reftitle.runtime; &extension.runtime;

# PHP Options/Info Configuration Options

&Name; | &Default; | &Changeable; | &Changelog;
assert.active | "1" | PHP_INI_ALL | Deprecated as of PHP 8.3.0
assert.bail | "0" | PHP_INI_ALL | Deprecated as of PHP 8.3.0
assert.warning | "1" | PHP_INI_ALL | Deprecated as of PHP 8.3.0
assert.callback | NULL | PHP_INI_ALL | Deprecated as of PHP 8.3.0
assert.quiet_eval | "0" | PHP_INI_ALL | Removed as of PHP 8.0.0
assert.exception | "1" | PHP_INI_ALL | Prior to PHP 8.0.0, defaults to `"0"`. Deprecated as of PHP 8.3.0
enable_dl | "1" | PHP_INI_SYSTEM | &removed.php.future;
max_execution_time | "30" | PHP_INI_ALL |
max_input_time | "-1" | PHP_INI_PERDIR |
max_input_nesting_level | "64" | PHP_INI_PERDIR |
max_input_vars | 1000 | PHP_INI_PERDIR |
zend.enable_gc | "1" | PHP_INI_ALL |

&ini.php.constants; &ini.descriptions.title;

`assert.active` `bool`

- Enable `assert` evaluation. zend.assertions should be used instead to control the behaviour of `assert`.

  &warn.deprecated.feature-8-3-0;

`assert.bail` `bool`

- Terminate script execution on failed assertions.

  &warn.deprecated.feature-8-3-0;

`assert.warning` `bool`

- Issue a PHP warning for each failed assertion.

  &warn.deprecated.feature-8-3-0;

`assert.callback` `string`

- User function to call on failed assertions.

  &warn.deprecated.feature-8-3-0;

`assert.quiet_eval` `bool`

- &warn.feature.removed-8-0-0;

  Use the current setting of `error_reporting` during assertion expression evaluation. If enabled, no errors are shown (implicit error_reporting(0)) while evaluation. If disabled, errors are shown according to the settings of `error_reporting`

`assert.exception` `bool`

- Issue an `AssertionError` exception for the failed assertion.

  &warn.deprecated.feature-8-3-0;

`enable_dl` `bool`

- This directive allows to turn dynamic loading of PHP extensions with `dl` on and off.

  The main reason for turning dynamic loading off is security. With dynamic loading, it's possible to ignore all open_basedir restrictions. The default is to allow dynamic loading.

`max_execution_time` `int`

- This sets the maximum time in seconds a script is allowed to run before it is terminated by the parser. This helps prevent poorly written scripts from tying up the server. The default setting is `30`. When running PHP from the command line the default setting is `0`.

  On non Windows systems, the maximum execution time is not affected by system calls, stream operations etc. Please see the `set_time_limit` function for more details.

  Your web server can have other timeout configurations that may also interrupt PHP execution. Apache has a `Timeout` directive and IIS has a CGI timeout function. Both default to 300 seconds. See your web server documentation for specific details.

`max_input_time` `int`

- This sets the maximum time in seconds a script is allowed to parse input data, like POST and GET. Timing begins at the moment PHP is invoked at the server and ends when execution begins. The default setting is `-1`, which means that max_execution_time is used instead. Set to `0` to allow unlimited time.

`max_input_nesting_level` `int`

- Sets the max nesting depth of input variables (i.e. `$_GET`, `$_POST`.)

`max_input_vars` `int`

- How many input variables may be accepted (limit is applied to $_GET, $_POST and $_COOKIE superglobal separately). Use of this directive mitigates the possibility of denial of service attacks which use hash collisions. If there are more input variables than specified by this directive, an `E_WARNING` is issued, and further input variables are truncated from the request.

`zend.enable_gc` `bool`

- Enables or disables the circular reference collector.