PHP: Hypertext Preprocessor (original) (raw)

Runtime Configuration

The behaviour of these functions is affected by settings in php.ini.

PHP Options/Info Configuration Options

Name Default Changeable Changelog
assert.active "1" INI_ALL Deprecated as of PHP 8.3.0
assert.bail "0" INI_ALL Deprecated as of PHP 8.3.0
assert.warning "1" INI_ALL Deprecated as of PHP 8.3.0
assert.callback NULL INI_ALL Deprecated as of PHP 8.3.0
assert.quiet_eval "0" INI_ALL Removed as of PHP 8.0.0
assert.exception "1" INI_ALL Prior to PHP 8.0.0, defaults to "0". Deprecated as of PHP 8.3.0
enable_dl "1" INI_SYSTEM This deprecated feature _will_certainly be removed in the future.
max_execution_time "30" INI_ALL
max_input_time "-1" INI_PERDIR
max_input_nesting_level "64" INI_PERDIR
max_input_vars 1000 INI_PERDIR
zend.enable_gc "1" INI_ALL
zend.max_allowed_stack_size "0" INI_SYSTEM Available as of PHP 8.3.0.
zend.reserved_stack_size "0" INI_SYSTEM Available as of PHP 8.3.0.
fiber.stack_size INI_ALL Available as of PHP 8.1.0.

For further details and definitions of the INI_* modes, see the Where a configuration setting may be set.

Here's a short explanation of the configuration directives.

assert.active bool

Enable assert() evaluation.zend.assertions should be used instead to control the behaviour of assert().

Warning

This feature has been_DEPRECATED_ as of PHP 8.3.0. Relying on this feature is highly discouraged.

assert.bail bool

Terminate script execution on failed assertions.

Warning

This feature has been_DEPRECATED_ as of PHP 8.3.0. Relying on this feature is highly discouraged.

assert.warning bool

Issue a PHP warning for each failed assertion.

Warning

This feature has been_DEPRECATED_ as of PHP 8.3.0. Relying on this feature is highly discouraged.

assert.callback string

User function to call on failed assertions.

Warning

This feature has been_DEPRECATED_ as of PHP 8.3.0. Relying on this feature is highly discouraged.

assert.quiet_eval bool

Warning

This feature was REMOVED as of PHP 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.

Warning

This feature has been_DEPRECATED_ as of PHP 8.3.0. Relying on this feature is highly discouraged.

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 allopen_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 theset_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 ofinput variables (i.e.$_GET, $_POST.)

max_input_vars int

How many input variables may be accepted (limit is applied to GET,_GET, 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](errorfunc.constants.php#constant.e-warning) is issued, and further input variables are truncated from the request.

zend.enable_gc bool

Enables or disables the circular reference collector.

zend.max_allowed_stack_size int

The maximum native stack space that the operating system allows the program to consume. Trying to consume more than the operating system allows typically results in a hard crash with no easily available debugging information. To make debugging easier, the engine throws anError before it happens (when the program uses more thanzend.max_allowed_stack_size-zend.reserved_stack_size bytes of stack).

Recursion in user-defined code does not consume native stack space. However, internal functions and magic methods do. Very deep recursion involving these functions can cause the program to exhaust all available native stack space.

Possible values for this parameter are:

As the stack size offibers is determined byfiber.stack_size, the value of this parameter is used instead ofzend.max_allowed_stack_size when checking stack usage during the execution of a Fiber.

Note:

This is not related to stack buffer overflows, and is not a security feature.

zend.reserved_stack_size int

The reserved stack size, in bytes. This is subtracted from themax allowed stack size, as a buffer, when checking the stack size.

Possible values for this parameter are:

fiber.stack_size int

The native stack size, in bytes, allocated for eachFiber.

The default value is 1MiB on systems with a pointer size lower than 8 bytes, or 2MiB otherwise.

Found A Problem?

There are no user contributed notes for this page.