主題: utf-8下的字符串截取问题?能否自行添加截取函数? 作者: yufeng 於 一月 03, 2006, 10:33:44 下午 在post.template中的字符串截取是这样写的
程式碼: {$post->getTopic()|strip_tags|truncate:200:"..."} 但是这样截取的话对utf8的简体中文会出现乱码的情况, 为了在summary中比较整齐地显示最新开通的博客,最新发表的文章等内容, 对utf8编码的中文的截取是比较重要的 我有一个现成的截取函数,可以很好地截取utf8编码的简体中文(繁体中文没有试验过), 不知道怎样把这个函数整合到系统中去, 使得可以在模板文件中调用,请指点, 谢谢 :-P 主題: Re: utf-8下的字符串截取问题?能否自行添加截取函数? 作者: yufeng 於 一月 07, 2006, 09:57:52 下午 参考了一些文章, 发现这个是smarty的问题, 对utf-8编码的中文截取不支持, 找了一个可以截取utf8中文的函数,替换掉了class/template/smarty/plugins/modifier.truncate.php 文件里面的truncate函数, 就可以了 :-D
还有个问题, 就是用来替换的这个函数比较简单, 不能对英文根据单词截取.. :-$..希望有高手能完善一下... 主題: Re: utf-8下的字符串截取问题?能否自行添加截取函数? 作者: darkhero 於 一月 14, 2006, 10:25:42 上午 参考了一些文章, 发现这个是smarty的问题, 对utf-8编码的中文截取不支持, 找了一个可以截取utf8中文的函数,替换掉了class/template/smarty/plugins/modifier.truncate.php 文件里面的truncate函数, 就可以了 :-D 还有个问题, 就是用来替换的这个函数比较简单, 不能对英文根据单词截取.. :-$..希望有高手能完善一下... 試試看找一下 mb_string 的相關資料... 利用 mb_substr 去修改的話應該可以順利達成!∼ 但是也有其他問題,比較擔心的是主機不支援 mb_string 函式~ 主題: Re: utf-8下的字符串截取问题?能否自行添加截取函数? 作者: markwu 於 一月 15, 2006, 04:52:59 下午 其實這是有辦法可以解的!只是關係到 LifeType 目前的用戶!
我們內部一直在討論是否應該只讓 LifeType 只支援 utf-8,如果可以,很多問題我們都可以修改。 例如 iconv, mbstring ...我們都可以用 docuwiki 所釋出的 utf8 處理函示來替代。 效果很好!目前 Joomla 1.1 就是用他來處理 utf-8 的字串問題。 只是如果這個決議一日不定,那麼就一日沒辦法作這些 patch,並非不能作,而是要考慮其他 encoding 的 user.... 如果有興趣,可以研究一下 docuwiki 與 joomla 1.1 再處理 utf-8 的函示。 Mark |