一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

模板引擎正則表達(dá)式調(diào)試小技巧

基于正則表達(dá)式替換的模板引擎很容易遇上正則表達(dá)式最大回溯/遞歸的限制。
惰性匹配并不可怕,正常情況下模板并不會不夠用,往往不會超出限制,discuz的模板引擎就大量使用了。但是因此而不去注意、不去學(xué)習(xí),則容易書寫錯誤并遇上問題。
當(dāng)preg_*返回的是null的時候則要注意了,判斷函數(shù)是is_null.
出錯并不可怕,但是最好把錯誤都完整的輸出,這樣調(diào)試就很容易了。
除了輸出出錯原因,還要輸出匹配的文本和使用的正則,這樣就很容易調(diào)試了。
php代碼
復(fù)制代碼 代碼如下:
<?php
if (is_null($tmp)){
$error_code = preg_last_error();
switch($error_code){
case PREG_NO_ERROR :
echo 'PREG_NO_ERROR';
break;
case PREG_INTERNAL_ERROR:
echo 'PREG_INTERNAL_ERROR';
break;
case PREG_BACKTRACK_LIMIT_ERROR:
echo 'PREG_BACKTRACK_LIMIT_ERROR';
break;
case PREG_RECURSION_LIMIT_ERROR:
echo 'PREG_RECURSION_LIMIT_ERROR';
break;
case PREG_BAD_UTF8_ERROR:
echo 'PREG_BAD_UTF8_ERROR';
break;
case PREG_BAD_UTF8_OFFSET_ERROR:
echo 'PREG_BAD_UTF8_OFFSET_ERROR';
break;
default:
echo 'UNKNOW ERROR';
}
exit;
}

參考資料
1、2010, Laruence 《深悉正則(pcre)最大回溯/遞歸限制》
2、2011, php中文手冊 preg_last_error

php技術(shù)模板引擎正則表達(dá)式調(diào)試小技巧,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 色狠狠综合网 | 九九九在线视频 | 99久久国产综合精麻豆 | 国产亚洲综合成人91精品 | 日韩经典一区 | 在线亚洲日产一区二区 | 国产中文字幕第一页 | 日本欧美一二三区色视频 | 一区二区免费视频观看 | 中文字幕亚洲无线码在线一区 | 精品日韩在线视频一区二区三区 | 麻豆91av| 一本色道久久99一综合 | 伊人网五月天 | 伊人网在线视频 | youjizz国产| 色黄网址 | 日韩精品第一 | 日本一区二区视频在线观看 | 婷婷综合国产激情在线 | 午夜在线视频国产 | 国产一区二区三区高清 | 9丨精品国产高清自在线看 aⅴ一区二区三区 | vr专区日韩精品中文字幕 | 六月婷婷开开放处 | 日韩理论视频 | 一区二区三区在线免费看 | 国产一区二区三区在线观看精品 | 国产秒拍 | 久久久国产一区二区三区丝袜 | 无套日出白浆在线播放 | 91看片在线观看 | 国产一区二区三区在线影院 | 91久久国产口精品久久久久 | 国产亚洲精品俞拍视频 | 欧美日韩国产在线观看一区二区三区 | 伊人激情综合 | 激情六月天 | 日本欧美强乱视频在线 | 日韩在线看片 | 国内在线亚洲精品第一线 |