每一次遇到问题,都有解决的方法。

当你解决了问题时,会发现原来自己一直在进步````

学php不久,却喜欢上了这种语言。太完美了。

今天遇到了一个乱码问题,这类问题对于一个smarty模板忠实者来说,应该算是普遍性的。

个人认为smarty和php是个近乎完美的组合。

下面就是解决问题的方法:

smarty模板截取字符串后边几个字乱码。

改写文件modifier_truncate.php

function smarty_modifier_truncatey( $string,$length = 80,$etc='...',$count_words = true ) {
        mb_internal_encoding("UTF-8");
        if ($length == 0)return '';
        if ( strlen( $string ) <= $length ) return $string;
        preg_match_all("/[/x01-/x7f]|[/xc2-/xdf][/x80-/xbf]|/xe0[/xa0-/xbf][/x80-/xbf]|[/xe1-/xef][/x80-/xbf][/x80-/xbf]|/xf0[/x90-/xbf][/x80-/xbf][/x80-/xbf]|[/xf1-/xf7][/x80-/xbf][/x80-/xbf][/x80-/xbf]/", $string, $info);
   if( $count_words ){
                $j = 0;
                for($i=0; $i<count($info[0]); $i++) {
                        $wordscut .= $info[0][$i];
                        if( ord( $info[0][$i] ) >=128 ){
                                $j = $j+2;
                        }else{
                                $j = $j + 1;
                        }
                        if ($j >= $length ) {
                                        return $wordscut.$etc;
                        }
                }
                return join('', $info[0]);
   }
        return join("",array_slice( $info[0],0,$length ) ).$etc;
}

读取{$xnews[t].title|truncate:14}

就这么简单```

转载于:https://www.cnblogs.com/fengju/archive/2008/05/14/6174135.html

smarty模板截取字符串乱码问题完美解决```````相关推荐

  1. oracle xe 乱码_关于Linux操作系统下终端乱码的完美解决方法

    初入linux的程序员们,经常会受到乱码的问候.可谓"始乱终弃".因为乱码,并且最终放弃了linux的不在少数.好吧,言归正传,先看看各类乱码是怎么形成的. 中文字符乱码 这种情况 ...

  2. 字符串乱码问题的解决

    package cn.com; //字符串乱码问题的解决 //问题描述: //在TOMCAT里经常出现这种情况:我们输入的字符串是汉字(默认的编码是GBK), //但是TOMCAT默认的是ISO885 ...

  3. python2中文字符串遍历乱码_完美解决Python2操作中文名文件乱码的问题

    Python2默认是不支持中文的,一般我们在程序的开头加上#-*-coding:utf-8-*-来解决这个问题,但是在我用open()方法打开文件时,中文名字却显示成了乱码. 我先给大家说说Pytho ...

  4. postmain请求中午乱码_完美解决Get和Post请求中文乱码的问题

    对于Post请求,只需在Servlet或者jsp中写入如下代码就可以把解决从表单中传入的中文乱码问题 request.setCharacterEncoding("utf-8"); ...

  5. IDEA 乱码问题完美解决

    IDEA乱码问题有几种方式,下面小编就都来总结啦 1.默认编辑器的页码格式没调 修改成UTF-8即可 2.修改配置文件编码格式 server.servlet.encoding.charset=utf- ...

  6. php utf8 或gbk 截取字符串乱码解决

    <?phpheader("content-type:text/html;charset=utf-8");mb_internal_encoding('utf-8');//设置所 ...

  7. PHP 截取字符串乱码的解决方案

    今天遇到一个坑,左右调试坑的我一脸懵逼,当我们对一条字符串进行截取的时候,通常第一个想到的就是substr()函数了,但是如果是中文+数字的字符串的话,这时候使用substr进行截取就会出现乱码的问题 ...

  8. php网站乱码,完美解决乱码、一键解决PHP的乱码、php网站乱码矫正神器、PHP乱码修复器

    php乱码无非就是编码问题,可以使用phpwamp自带的常用工具一键解决 输入你的php版本文件的所在路径,点击修复,然后重启动环境就可以了

  9. Python 2.7:字符串乱码问题的解决

    2019独角兽企业重金招聘Python工程师标准>>> 背景: Python 2.7 Windows 7 Pycharm 2017.1 当我们从数据库中提取到字符串,需要在控制台输出 ...

最新文章

  1. hmac-sha1加密算法C源码示例
  2. Xmanager连接Linux 9的方法
  3. 归并排序及C语言实现
  4. Java锁 优先级_详解Java的线程的优先级以及死锁
  5. [LeetCode]Majority Element
  6. WPF 的 ElementName 在 ContextMenu 中无法绑定成功?试试使用 x:Reference!
  7. matlab中“存储空间不足,无法处理此命令”
  8. 补充 返回泛型指定类的方法 0106
  9. Java对象表示方式1:序列化、反序列化和 transient 关键字的作用
  10. Spring注入方式及用到的注解 -----@Component,@Service,@Controller,@Repository
  11. 电子科大考研计算机考研经验,电子科技大学
  12. 数据结构与算法(总结)
  13. java毕业设计和毕业论文怎么写,答辩流程是怎样的?
  14. OpenCasCade——给定B样条曲线上的一点,求出过该点的切向量或法向量
  15. mysql多次登录失败控制,Mysql登录失败多次锁定配置
  16. win10 可以复制但无法粘贴的问题
  17. 笔记本添加固态硬盘记
  18. 微信小程序5——小程序网络数据请求
  19. 【数学分析】伯努利不等式
  20. NyistOJ 2 括号匹配(栈)

热门文章

  1. 3.4.2 停止等待协议
  2. vivado与modelsim的联合仿真(二)
  3. css3制作八棱锥_CSS基础八部分-第二部分
  4. 如何彻底解决安装Windows漏洞补丁出现蓝屏或无法启动问题?
  5. “由于/bin 不在PATH 环境变量中,故无法找到该命令”
  6. 模型压缩千万不要选择剪枝,那就是一个坑,改造一个学生网络才是真的压缩
  7. pytorch 保存网络的时候值得注意的事情
  8. 1503 - A PRIMARY KEY must include all columns in the table's partitioning function
  9. Docker 和 Kubernetes 从听过到略懂:给程序员的旋风教程
  10. uC/OS-II源码分析(四)