Runtime Configuration

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

PCRE Configuration Options
Name Default Changeable Changelog
pcre.backtrack_limit "1000000" INI_ALL  
pcre.recursion_limit "100000" INI_ALL  
pcre.jit "1" INI_ALL  
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.

pcre.backtrack_limit int

PCRE's backtracking limit. Defaults to 100000 for PHP < 5.3.7.

pcre.recursion_limit int

PCRE's recursion limit. Please note that if you set this value to a high number you may consume all the available process stack and eventually crash PHP (due to reaching the stack size limit imposed by the Operating System).

pcre.jit bool

Whether PCRE's just-in-time compilation is going to be used.

add a note add a note

User Contributed Notes 2 notes

up
-6
chris at ocproducts dot com
13 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.
up
-15
610010559 at qq dot com
4 years ago
pcre.backtrack_limit can be set to -1;
ini_set("pcre.backtrack_limit", "-1");

after i put the above code in my code, it works;
so i guess -1 means infinite(i am not very sure ,but it works);
so when you have not idea how much it should be set in your program, you can try this.
To Top