在织梦cms中使用繁体转简体的函数BIG5ToGB来替换字特定符串中包

2014-08-21dedecms开发
117

在采集数据的时候,发现如果采集对象中存在繁体字,无论是采集还是后台编辑添加,都无法完成,相关字符串都会在繁体字出被自动截断,有点惹人恼。
更烦恼的是调用: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日修正,解决替换部分字母与汉字混排时替换出错问题!
再次声明:本函数主要是解决字符串部分替换的问题,真要用于全文替换,请您留言,俺再给你找解决方案。

举个应用实例吧:

假如说您copy的文章中既含有繁体字,又含有简体字,那么要转换为简体的话,那么就可以稍微修改下article_add.php,

找到:

//处理body字段自动摘要、自动提取缩略图等
$body = AnalyseHtmlBody($body,$description,$litpic,$keywords,’htmltext’);

修改为:

//处理body字段自动摘要、自动提取缩略图等
$body = BIG5ToGB($body); //就是增加了一句过滤而已
$body = AnalyseHtmlBody($body,$description,$litpic,$keywords,’htmltext’);

The End

相关推荐

织梦cms批量删除所有无效TAGS的办法
使用过DedeCMS的站长应当都遇到过这样的问题,在我们删掉一些文章内容后,tags标识中就慢慢拥有许多失效的标识存有,这种TAGS标识并不会跟随大家删掉文章内容一起删掉,如果是受欢迎的词还行,有很多文章内容都是有,如果是小众词,便会发生在TAGS目录有词,...
2023-08-17 dedecms开发
181

织梦cms搜索页面不能使用php标签的解决办法
织梦dedecms的搜索页面,不能使用{wmd:php}标签,这样让搜索页少了很多的灵活性,今天织梦模板网给出如下解决办法,让织梦的搜索页面也能支持php标签 1、找到include/arc.searchview.class.php,将如下函数加入到SearchView类里面 /** * 解析模板,对固定的...
2021-12-07 dedecms开发
239

织梦cms批量取消审核文档的实现方法
跟版网小编教你实现了在原来dede文章批量管理的地方 添加一个 取消审核 : 实现方法: 修改管理目录(默认为dede)下的文件:archives_do.php 插入以下代码(位置随意 可以放审核文档下面 方便记忆): /*--------------------------//取消审核文档function...
2018-12-22 dedecms开发
131

织梦cms系统TAG标签和分页伪静态设置教程
现在好多CMS系统都有TAGS标签这项功能,知名的DEDECMS也有,但是它的标签功能很差,不利于seo优化,同时也有很多问题,比如:当前页不存在上一页时,链接为-1的问题,还有出现系统无此标签,可能已经移除的问题。 今天跟版网小编就教大家把标签伪静态(部分...
2018-11-21 dedecms开发
127

织梦cms会员中心获取登录用户名与ID号的方法
本文实例讲述了Dedecms获取登录用户名与ID号的方法。分享给大家供大家参考。具体方法如下: 获取当前登录用户名 1、include/arc.archives.class.php在第9行下面加入下面这段代码: require_once(../member/config.php); 2、模板文件,就可以用下面的代码,来获...
2018-03-20 dedecms开发
430

织梦CMS系统导出数据到excel教程
本来这个功能是一个朋友要做的,因为,之前从没有接触过excel,这个功能也没有研究过,但是,这个功能比较实用的,因为,很多公司虽然有网站,但是,公司其它部门可能还要把公司数据导出到纸上面,以便研究公司数据之用,所以,很多的公司对这个功能就要求使...
2017-01-05 dedecms开发
1339