PHP 5.5.17 is available

Laufzeit-Konfiguration

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

PCRE-Konfigurationsoptionen
Name Standard Veränderbar Changelog
pcre.backtrack_limit "1000000" PHP_INI_ALL Steht ab PHP 5.2.0 zur Verfügung
pcre.recursion_limit "100000" PHP_INI_ALL Steht ab PHP 5.2.0 zur Verfügung
Weitere Details und die Definitionen der PHP_INI_*-Konstanten finden Sie im Wo Konfigurationseinstellungen gesetzt werden können.

Hier eine kurze Erklärung der Konfigurationsoptionen:

pcre.backtrack_limit integer

PCREs Backtracking-Limit. Vor PHP 5.3.7 war der Standardwert 100000 (jetzt 1000000).

pcre.recursion_limit integer

PCREs Rekursionslimit. Bitte beachten Sie, dass bei einem hohen Wert der gesamte verfügbare Prozess-Stack verwendet werden könnte und PHP schließlich (wenn es das vom Betriebssystem vorgegebene Limit für die Stackgröße erreicht) abstürzen könnte.

add a note add a note

User Contributed Notes 2 notes

up
4
php at richardneill dot org
3 years ago
pcre.backtrack_limit defaults to 100k.  This is rather conservative.
It is limited by RAM size, not the ulimit on stack-size.

On a (2009-era) netbook, I can set pcre.backtrack_limit to 100 million, and the regex will happily process a 90 million character string in about 3 seconds. YMMV.
up
1
chris at ocproducts dot com
4 years ago
pcre.backtrack_limit sets the maximum bind length PREG calls (e.g. preg_replace_callback) can make. However the actual maximum seems to be approximately half the value set here, possibly due to the character encoding that PCRE runs with internally.
To Top