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

在采集数据的时候,发现如果采集对象中存在繁体字,无论是采集还是后台编辑添加,都无法完成,相关字符串都会在繁体字出被自动截断,有点惹人恼。更烦恼的是调用:charset.helper.php,中的函数big52gb,竟然无法…

在采集数据的时候,发现如果采集对象中存在繁体字,无论是采集还是后台编辑添加,都无法完成,相关字符串都会在繁体字出被自动截断,有点惹人恼。
更烦恼的是调用: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’);

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

织梦dedecms的搜索页面,不能使用{dede:php}标签,这样让搜索页少了很多的灵活性,今天织梦模板网给出如下解决办法,让织梦的搜索页面也能支持php标签 1、找到include/arc.searchview.class.php,将如下函数加入到SearchView类里面 /** * 解析模板,对固定的
跟版网小编教你实现了在原来dede文章批量管理的地方 添加一个 取消审核 : 实现方法: 修改管理目录(默认为dede)下的文件:archives_do.php 插入以下代码(位置随意 可以放审核文档下面 方便记忆): /*--------------------------//取消审核文档function
现在好多CMS系统都有TAGS标签这项功能,知名的DEDECMS也有,但是它的标签功能很差,不利于seo优化,同时也有很多问题,比如:当前页不存在上一页时,链接为-1的问题,还有出现系统无此标签,可能已经移除的问题。 今天跟版网小编就教大家把标签伪静态(部分
HTTP 错误 500.0 - Internal Server Error D:\php-5.3.15-nts-Win32-VC9-x86\php-cgi.exe - FastCGI 进程超过了配置的活动超时时限 我使用的是IIS7+php5.3.15 的配置。在后台刷新首页的时候出现了这样的问题。 解决方法 : 打开IIS7, 点击 FastCGI设置, 双
一、织梦官方对织梦友情链接标签的解释 标签名称: flink 标记简介: 功能说明: 用于获取友情链接 适用范围: 全局使用 基本语法: {dede:flink row=24/} 参数说明: type=image 或textall,图片链接,text文字链接; row=24 链接数量 titlelen=24 站点文字