<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head>
<card title="解决smarty中英文多编码字符截取乱码问题的方法" id="card1">
<p> 游客</p><p>
标题:解决smarty中英文多编码字符截取乱码问题的方法<br/>
正文:<br/>
一般网站页面的显示都不可避免的会涉及子字符串的截取，这个时候truncate就派上用场了，但是它只适合英文用户，对与中文用户来说，使用 truncate会出现乱码，而且对于中文英文混合串来说，截取同样个数的字符串，实际显示长度上却不同，视觉上会显得参差不齐，影响美观。这是因为一个中文的长度大致相当于两个英文的长度。此外，truncate也不能同时兼容GB2312, UTF-8等编码。改良的smartTruncate： 文件名：modifier.smartTruncate.php具体代码如下：代码如下:&amp;lt;?php function smartDetectUTF8($string) {     static $result = array();    if(! array_key_exists($key = md5($string), $result))     {         $utf8 = &amp;quot;             /^(?:                 [\x09\x0A\x0D\x20-\x7E]                            # ASCII                 | [\xC2-\xDF][\x80-\xBF]     &amp;nbs<br/><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=2015&amp;Page=1">[&lt;&lt;]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=2015&amp;Page=1">[[1]]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=2015&amp;Page=2">[2]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=2015&amp;Page=3">[3]</a><a href="http://camnpr.com/wap.asp?mode=WAP&amp;act=View&amp;id=2015&amp;Page=9">[&gt;&gt;]</a><br/>
<br/>
<a href="wap.asp?act=Com&amp;id=2015">查看评论(0)</a><br/>
<a href="wap.asp?act=AddCom&amp;inpId=2015">发表评论</a><br/><br/>

<br/>

<br/>
<a href="http://camnpr.com/wap.asp">首页</a>
</p>
</card>
</wml>