zoukankan      html  css  js  c++  java
  • preg_match正则匹配的字符串长度问题

    项目中,用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('pcre.recursion_limit', 99999);

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

    项目中,用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('pcre.recursion_limit', 99999);

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

  • 相关阅读:
    2015新年说点啥
    How to debug the CPU usage 100
    C# Keyword usage virtual + override VS new
    Getting out of your comfort zone.
    Resource for learning Algos
    深圳五险一金缴纳比例
    HashSet/List 排序
    DataGrid 刷新选中问题
    WPF常用代码:Visual Logical Tree
    WPF常用代码:依赖属性
  • 原文地址:https://www.cnblogs.com/phpbin/p/2799369.html
Copyright © 2011-2022 走看看