PHP的preg_match匹配字符串長度問題解決方法
項目中,用preg_match正則提取目標內容,死活有問題,代碼測得死去活來。
后來懷疑PHP 的preg_match有字符串長度限制,果然,發(fā)現(xiàn)“pcre.backtrack_limit ”的值默認只設了100000。
解決辦法:ini_set('pcre.backtrack_limit', 999999999);
注:這個參數(shù)在php 5.2.0版本之后可用。
另外說說關于:pcre.recursion_limit
pcre.recursion_limit是PCRE的遞歸限制,這個項如果設很大的值,會消耗所有進程的可用堆棧,最后導致PHP崩潰。
也可以通過修改配置來限制:ini_set('pcre.recursion_limit', 99999);
實際項目應用中,最好也對內存進行限定設置:ini_set('memory_limit', '64M'); , 這樣就比較穩(wěn)妥妥嘎。
- php中最簡單的字符串匹配算法
- 正則匹配密碼只能是數(shù)字和字母組合字符串功能【php與js實現(xiàn)】
- PHP使用數(shù)組依次替換字符串中匹配項
- PHP中preg_match函數(shù)正則匹配的字符串長度問題
- PHP實現(xiàn)字符串翻轉功能的方法【遞歸與循環(huán)算法】
- PHP中strnatcmp()函數(shù)“自然排序算法”進行字符串比較用法分析(對比strcmp函數(shù))
- php匹配字符中鏈接地址的方法
- PHP中正則表達式對UNICODE字符碼的匹配方法
- 基于PHP實現(xiàn)棧數(shù)據(jù)結構和括號匹配算法示例
- PHP實現(xiàn)的字符串匹配算法示例【sunday算法】