天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

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

基于正則表達式替換的模板引擎很容易遇上正則表達式最大回溯/遞歸的限制。
惰性匹配并不可怕,正常情況下模板并不會不夠用,往往不會超出限制,discuz的模板引擎就大量使用了。但是因此而不去注意、不去學習,則容易書寫錯誤并遇上問題。
當preg_*返回的是null的時候則要注意了,判斷函數(shù)是is_null.
出錯并不可怕,但是最好把錯誤都完整的輸出,這樣調(diào)試就很容易了。
除了輸出出錯原因,還要輸出匹配的文本和使用的正則,這樣就很容易調(diào)試了。
php代碼
復制代碼 代碼如下:
<?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技術模板引擎正則表達式調(diào)試小技巧,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 好姑娘BD高清在线观看免费 | 俄罗斯美女啪啪 | 国产在线自天天人人 | 亚洲免费综合色视频 | 加勒比一本之道高清视频在线观看 | 国产乱码免费卡1卡二卡3卡四卡 | 久久精品一区二区免费看 | 抽插内射高潮呻吟爆乳 | 99视频这里只有精品国产 | 国产精品黄色大片 | 狠狠色狠狠色综合日日小说 | 51国产偷自视频在线视频播放 | 国内久经典AAAAA片 | 国产午夜精AV在线麻豆 | 极品美女久久久久久久久久久 | 92电影网午夜福利 | 男生插曲女生身全过程 | 青青国产在线观看视频 | 美女拉开腿让男生桶到爽 | 狠狠色综合久久婷婷 | 欧美乱码卡一卡二卡四卡免费 | 久久精品国产色蜜蜜麻豆国语版 | 亚洲乱色视频在线观看 | 強姧伦久久久久久久久 | 国产午夜视频在线 | 国产欧美一区二区三区在线看 | 九九热这里只有精品2 | sao虎影院桃红视频在线观看 | 中文字幕无码一区二区免费 | 果冻传媒在线观看高清完整免费 | 国产黄A片在线观看永久免费麻豆 | 在线播放日韩欧美亚洲日本 | 欧美大片免费 | 久久精品久精品99热 | 永久免费看mv网站入口 | 国产午夜AV无码无片久久96 | 伊人久久大香线蕉综合高清 | 久久亚洲精品无码A片大香大香 | 打卡中国各地奋斗第一线 | 免费看毛片网 | 一区二区视频在线观看高清视频在线 |