我发现如果我尝试在很长的字符串上使用 preg_replace,PHP 会向我的浏览器返回一个空页面,而不显示错误消息。我能够在我的测试环境中重现这个错误。 preg_replace 可以处理的字符串的最大长度是多少?是否可以增加这个长度?
对于超过 4M 的 $pattern 匹配字符串,同样的情况也发生在我身上。
可能你需要增加PCRE.backtrack_limit使用 ini_set() 或编辑 php.ini。
检查 preg 是否有最后一个错误:
$retval = preg_replace ($pattern, $replacement, $subject);
if ($retval === null) {
// see http://php.net/manual/en/function.preg-last-error.php
echo preg_last_error();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)