用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 |
|
更多详细内容请查看:https://www.111cn.net/phper/31/42927.htm
deepin20怎么新增字体? deepin20安装字体的教程
Linux如何给文件权限? linux给文件添加可执行权限的技巧
deepin20桌面图标样式怎么修改? deepin更换图标主题的技巧
virtualbox打不开虚拟机怎么办? linux无法访问virtualbox的解决办法
deepin怎么注销系统? deepin系统注销与切换用户的方法
Manjaro linux怎么调鼠标速度? Manjaro鼠标设置光标速度的技巧