久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      解決preg_match匹配過(guò)多字符長(zhǎng)度的限制的思路分析

      但是官方的文檔里面沒(méi)有說(shuō)明這一點(diǎn)。

      于是開(kāi)始測(cè)試:將要匹配的字串不斷縮短,直到縮為原來(lái)1/5的時(shí)候可以正常匹配了,所以更加確定了。

      到google里一搜,終于找到了解決方案:在php.ini中加入(隨便放到哪里,我是直接放第一行的)

      pcre.backtrack_limit=-1

      再次使用preg_match函數(shù)測(cè)試一下,大概1300多行上萬(wàn)個(gè)字符的字符串也能夠匹配了。

      項(xiàng)目中,用preg_match正則提取目標(biāo)內(nèi)容,死活有問(wèn)題,代碼測(cè)得死去活來(lái)。

      后來(lái)發(fā)現(xiàn)“pcre.backtrack_limit ”的值默認(rèn)只設(shè)了100000。

      解決辦法:ini_set(‘pcre.backtrack_limit’, 999999999);

      注:這個(gè)參數(shù)在php 5.2.0版本之后可用。

      另外說(shuō)說(shuō)關(guān)于:pcre.recursion_limit

      pcre.recursion_limit是PCRE的遞歸限制,這個(gè)項(xiàng)如果設(shè)很大的值,會(huì)消耗所有進(jìn)程的可用堆棧,最后導(dǎo)致PHP崩潰。

      也可以通過(guò)修改配置來(lái)限制:ini_set(‘pcre.recursion_limit’, 99999);

      實(shí)際項(xiàng)目應(yīng)用中,最好也對(duì)內(nèi)存進(jìn)行限定設(shè)置:ini_set(‘memory_limit’, ’64M’); , 這樣就比較穩(wěn)妥妥嘎。

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)