Laufzeit-Konfiguration

Das Verhalten dieser Funktionen wird durch Einstellungen in der php.ini beeinflusst.

Konfigurationsoptionen für PHP-Optionen/Info
Name Standard Veränderbar Changelog
assert.active "1" INI_ALL Seit PHP 8.3.0 veraltet.
assert.bail "0" INI_ALL Seit PHP 8.3.0 veraltet.
assert.warning "1" INI_ALL Seit PHP 8.3.0 veraltet.
assert.callback NULL INI_ALL Seit PHP 8.3.0 veraltet.
assert.quiet_eval "0" INI_ALL Entfernt in PHP 8.0.0
assert.exception "1" INI_ALL Vor PHP 8.0.0 war der Standardwert "0" Seit PHP 8.3.0 veraltet.
enable_dl "1" INI_SYSTEM Dieses veraltete Feature wird in der Zukunft sicherlich entfernt.
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 Verfügbar seit PHP 8.3.0.
zend.reserved_stack_size "0" INI_SYSTEM Verfügbar seit PHP 8.3.0.
fiber.stack_size   INI_ALL Verfügbar seit PHP 8.1.0.
Weitere Details und die Definitionen der INI_*-Konstanten sind unter Wo Konfigurationseinstellungen gesetzt werden können zu finden.

Hier eine kurze Erklärung der Konfigurationsoptionen:

assert.active bool

Aktiviert die assert()-Auswertung. Um das Verhalten von assert() zu kontrollieren, sollte stattdessen zend.assertions verwendet werden.

Warnung

Dieses Feature ist seit PHP 8.3.0 als DEPRECATED (veraltet) markiert. Von der Verwendung dieses Features wird dringend abgeraten.

assert.bail bool

Beendet bei fehlgeschlagener Assertion die Ausführung eines Skripts.

Warnung

Dieses Feature ist seit PHP 8.3.0 als DEPRECATED (veraltet) markiert. Von der Verwendung dieses Features wird dringend abgeraten.

assert.warning bool

Erzeugt bei jeder fehlgeschlagenen Assertion eine PHP-Warnung.

Warnung

Dieses Feature ist seit PHP 8.3.0 als DEPRECATED (veraltet) markiert. Von der Verwendung dieses Features wird dringend abgeraten.

assert.callback string

Eine benutzerdefinierte Funktion, die bei fehlgeschlagenen Assertions ausgeführt wird.

Warnung

Dieses Feature ist seit PHP 8.3.0 als DEPRECATED (veraltet) markiert. Von der Verwendung dieses Features wird dringend abgeraten.

assert.quiet_eval bool
Warnung

Dieses Feature wurde in PHP 8.0.0 ENTFERNT.

Verwendet während der Auswertung eines Assertion-Ausdrucks die aktuelle Einstellung von error_reporting(). Ist diese Einstellung aktiviert, werden während der Auswertung keine Fehler angezeigt (implizit error_reporting(0)). Falls deaktiviert, werden Fehler entsprechend der Einstellung von error_reporting() angezeigt.

assert.exception bool

Erzeugt eine AssertionError-Exception für die fehlgeschlagene Assertion.

Warnung

Dieses Feature ist seit PHP 8.3.0 als DEPRECATED (veraltet) markiert. Von der Verwendung dieses Features wird dringend abgeraten.

enable_dl bool

Mit dieser Direktive kann das dynamische Laden von PHP-Erweiterungen mittels dl() ein- und ausgeschaltet werden.

Der Hauptgrund, das dynmische Laden abzustellen, sind Sicherheitsüberlegungen. Mit dem dynamischen Laden ist es möglich, alle open_basedir-Einschränkungen zu umgehen. Der Standardwert ist, das dynamische Laden zuzulassen.

max_execution_time int

Legt die maximale Zeit in Sekunden fest, die ein Skript laufen darf, bevor der Parser die Ausführung stoppt. Diese Einstellung hilft zu verhindern, dass schlampig geschriebene Skripte Ihren Server lahmlegen. Der Standardwert für diese Einstellung ist 30 Sekunden. Wird PHP von der Kommandozeile ausgeführt, so ist der Standardwert 0.

Auf Nicht-Windows-Systemen beeinhaltet die maximale Ausführungszeit keine Systemaufrufe, Streamoperationen usw. Weitere Details finden Sie bei der Funktion set_time_limit().

Ihr Webbserver kann andere Timeout-Einstellungen haben, die ebenfalls die PHP-Ausführung unterbrechen können. Apache hat eine TimeOut-Direktive und IIS hat eine CGI-Timeout-Funktion. Beide sind als Standardwert auf 300 Sekunden eingestellt. Genauere Informationen finden Sie in der Dokumentation Ihres Webservers.

max_input_time int

Legt die maximale Zeit in Sekunden fest, die ein Skript verbrauchen darf, um Eingabedaten wie POST, GET und Dateiuploads zu verarbeiten. Die Zeitmessung beginnt, sobald PHP auf dem Server aufgerufen wird, und endet, wenn die Ausführung beginnt. Der Standardwert ist -1, was bedeutet, dass stattdessen max_execution_time verwendet wird. Der Wert 0 bedeutet kein Zeitlimit.

max_input_nesting_level int

Legt die maximale Verschachtelungtiefe für Eingabevariablen (z. B. $_GET, $_POST) fest.

max_input_vars int

Wie viele Eingabe-Variablen maximal angenommen werden (dieses Limit wird auf die superglobalen $_GET, $_POST und $_COOKIE separat angewandt). Die Verwendung dieser Einstellung verringert die Möglichkeit von Denial-of-Service-Angriffen, die Hash-Kollisionen nutzen. Wenn mehr Eingabe-Variablen gesendet werden, als mit dieser Einstellung erlaubt ist, wird ein Fehler der Stufe E_WARNING ausgelöst und weitere Eingabe-Variablen werden nicht angenommen.

zend.enable_gc bool

Aktiviert bzw. deaktiviert die Speicherbereinigung zirkulär abhängiger Referenzen.

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 an Error before it happens (when the program uses more than zend.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:

  • 0: Auto-detect the maximum native stack space that the operating system allows the program to consume. This is the default. When detection is not possible, a known system default is used.
  • -1: Disables stack size checking in the engine.
  • Positive integer: A fixed size, in bytes. Setting this value too high has the same effect as disabling stack size checking.

As the stack size of fibers is determined by fiber.stack_size, the value of this parameter is used instead of zend.max_allowed_stack_size when checking stack usage during the execution of a Fiber.

Hinweis:

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 the max allowed stack size, as a buffer, when checking the stack size.

Possible values for this parameter are:

  • 0: Auto-detect a sensible size.
  • Positive integer: A fixed size, in bytes.

fiber.stack_size int

The native stack size, in bytes, allocated for each Fiber.

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

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top