在织梦cms中使用繁体转简体的函数BIG5ToGB来替换字
导读:织梦技术织梦技术在采集数据的时候,发现如果采集对象中存在繁体字,无论是采集还是后台编辑添加,都无法完成,相关字符串都会在繁体字出被自动截断,有点惹人恼。更烦恼的是调用:char织梦模板网站。
在采集数据的时候,发现如果采集对象中存在繁体字,无论是采集还是后台编辑添加,都无法完成,相关字符串都会在繁体字出被自动截断,有点惹人恼。 更烦恼的是调用:charset.helper.php,中的函数big52gb,竟然无法转换,不知道是big5-gb.dat库(这个库,打开后很乱)的问题,还是big52gb函数的问题,反正是无法实现替换功能。 如果你也遇到了这个问题,那么,就继续往下看:
为了解决这个问题,我们新写个简单的转换函数,以及一个简单的简体繁体字符库:
function BIG5ToGB($Text) { $filename = “/very68.com.big5.gb.dat”; $fp = fopen($filename, “rb”); $BIG5_DATA = fread($fp,filesize($filename)); fclose($fp); $BIG5_STR = explode(‘$$’,$BIG5_DATA); //新增过滤后判断,解决遇到汉字与字母混排替换出错问题 $FilterText = preg_replace(“/-|_|/|[|]|(|)|{|}|./”,”,$Text); $FilterText = preg_replace(“/[0-9]|[a-z]/i”,”,$FilterText); for($i=0;$i<count($BIG5_STR);$i++) { $BIG5_iSTR = explode(‘$’,$BIG5_STR[$i]); if(strstr($FilterText,$BIG5_iSTR[0])) { $Text = str_replace($BIG5_iSTR[0],$BIG5_iSTR[1],$Text); } else {continue;} } return $Text; }
其中需要的简体繁体字字库的文件:very68.com.big5.gb.dat,是存放简体字和繁体字的对照表,格式如下:
“ 賊$贼$$亂$乱$$師$师$$個$个 ”
字符串长度随意,只要是你需要替换的,你都可以加进来[ 如果您要现成的very68.com.big5.gb.dat字库,就请在原文评论处留下邮箱,24小时内发给您 ]。
追加说明:繁体字库,昨天抽了半天时间终于编辑完毕,有需要的兄弟姐妹请留下您的邮箱即可! 2013/08/08日修正,解决替换部分字母与汉字混排时替换出错问题! 再次声明:本函数主要是解决字符串部分替换的问题,真要用于dede下瓻模板下载全文替换,请您留言,俺再给你找解决方案。
举个应用实例吧:
假如说您copy的文章中既含有繁体字,又含有简体字,那么要转换为简体的话,那么就可以稍微修改下article_add.php,
找到:
//处理body字段自动摘要、自dede网站模板动提取缩略图等 $body = AnalyseHtmlBody($body,$description,$litpic,$keywords,’htmltext’);
修改为:
//处理body字段自动摘要、自动提取缩略图等 $body = BIG5ToGB($body); //就是增加了一句过滤而已 $body = AnalyseHtmlBody($body,$description,$litpic,$keywords,’htmltext’);
相关织梦模板网站。声明: 本文由我的SEOUC技术文章主页发布于:2023-07-21 ,文章在织梦cms中使用繁体转简体的函数BIG5ToGB来替换字主要讲述函数,繁体,织梦网站建设源码以及服务器配置搭建相关技术文章。转载请保留链接: https://www.seouc.com/article/web_33561.html