Heim >php教程 >php手册 >preg_match正则匹配提示pcre.backtrack_limit解决办法

preg_match正则匹配提示pcre.backtrack_limit解决办法

WBOY
WBOYOriginal
2016-06-13 09:56:271689Durchsuche

本文章介绍了关于preg_match正则匹配提示pcre.backtrack_limit解决办法,有需要的朋友可参考一下。


用preg_match正则提取目标内容,死活有问题,代码测得死去活来。

后来怀疑PHP 的preg_match有字符串长度限制,果然,发现“pcre.backtrack_limit ”的值默认只设了100000。

解决办法:

 代码如下 复制代码
ini_set('pcre.backtrack_limit', 999999999);

注:这个参数在php 5.2.0版本之后可用。

另外说说关于:
pcre.recursion_limit

pcre.recursion_limit是PCRE的递归限制,这个项如果设很大的值,会消耗所有进程的可用堆栈,最后导致PHP崩溃。

也可以通过修改配置来限制:实际项目应用中,最好也对内存进行限定设置:ini_set('memory_limit', '64M'); , 这样就比较稳妥妥嘎。

 代码如下 复制代码
ini_set('pcre.recursion_limit', 99999);

 


其它解决办法参考文献

 代码如下 复制代码

pcre.backtrack_limit=-1

更多详细内容请查看:http://www.bKjia.c0m/phper/31/42927.htm

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn