四虎精品视频-四虎精品成人免费网站-四虎黄色网-四虎国产视频-国产免费91-国产蜜臀97一区二区三区

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

基于正則表達(dá)式替換的模板引擎很容易遇上正則表達(dá)式最大回溯/遞歸的限制。
惰性匹配并不可怕,正常情況下模板并不會(huì)不夠用,往往不會(huì)超出限制,discuz的模板引擎就大量使用了。但是因此而不去注意、不去學(xué)習(xí),則容易書(shū)寫(xiě)錯(cuò)誤并遇上問(wèn)題。
當(dāng)preg_*返回的是null的時(shí)候則要注意了,判斷函數(shù)是is_null.
出錯(cuò)并不可怕,但是最好把錯(cuò)誤都完整的輸出,這樣調(diào)試就很容易了。
除了輸出出錯(cuò)原因,還要輸出匹配的文本和使用的正則,這樣就很容易調(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中文手冊(cè) preg_last_error

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

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

主站蜘蛛池模板: 绫濑天| 秦皇岛电视台| 罗素克劳主演电影| 月亮电影| 徐贤电影| 小姐资源| 搜狐视频安装| 包青天之真假包公| 地球的宇宙环境教学反思| 日本电影高校教师| karina hart| 烽火流金电视剧全集免费观看| 母5| 啵乐乐| 亚洲免费观看视频| 冷门森系ins冷淡风壁纸| ..1.| 声色犬马 电影| hugh grant| 在线高清免费观看| 哗鬼住正隔篱| 武装少女免费观看| 左航个人资料| 草神纳西妲图片| 爱情和战争| 生物选择性必修三| 美绪电影主演的电影| 搜狐视频官网| 龙咁威| 网络谜踪 电影| 1980属猴多少岁了| 玫瑰的故事剧照| 上香香灰打卷图解| 欧美gv网站| 爆龙战队暴连者| 免费完整队列训练教案| 电影白洁少妇完整版| 执法者 电影| 神笔马良动画片| 男女视频在线播放| 妈妈你真棒韩国电影免费观看完整版|