php中截取中文不乱吗】的更多相关文章

php截取中文的使用是随处可见的,譬如,博客首页显示简介,可能会用到,或一些相册简介会用到,以前不知道,还傻傻的自己去写函数用来做“智能截取”,效果还不十分好,幸运的是,今天因为一位同学做项目,让我一起看看,于是想到老师曾经说过的mb_substr()函数,仔细查查它的用法,原来这个函数就可以实现,何必再自己去写函数.当然,如果你要追求更加智能的截取,那么你就要自己去写,自己去定制了. 简单说下这个函数的用法和功能,官方的说法如下: mb_substr (PHP 4 >= 4.0.6, PHP…
前段用thinkphp写了一个系统,感觉thinkphp学起来比较容易,开发起来了比较顺手,其中一个关键的因素就是它的模版引擎相当强大,使用方法跟smarty类似,在模版中还可以用php代码,有模版包含.继承的等很多好的功能…… 但是我发现thinkphp在模版函数中,没有中文字符串的截取函数,有个substr可以截取,但是不是基于中文的,当使用utf8编码的时候,由于3个字符代表一个中文,如果想截取的内容混杂中文/数字/英文字符串的时候就会出问题,最后一个字符很有可能混乱,这个问题很头大.于是…
TP5模板页截取中文字符串 {$vo.task_detail|mb_substr=###,0,15,'utf-8'}…
大家都知道,一个汉字在gb2312下面是占2个字节,用传统的substr肯定会出问题 ,所以应该用,mb_substr和mb_strcut两个函数 在这个之前,打开php.ini打开php_mbstring.dll扩展 例子: echo mb_substr('这样以来我的字符串就不会有乱码',0,7,'utf-8');//输出 这样一来我的字 echo mb_strcut('这样一来我的字符串就不会有乱码',0,7,'utf-8'); //输出 这样一 //mb_subtr这样按字来切分字符,而…
function utf_substr($str, $len) { for ($i = 0; $i < $len; $i++) { $temp_str = substr($str, 0, 1); if (ord($temp_str) > 127) { $i++; if ($i < $len) { $new_str[] = substr($str, 0, 3); $str = substr($str, 3); } } else { $new_str[] = substr($str, 0,…
在PHP中,我们都知道有专门的mb_substr和mb_strlen函数,可以对中文进行截取和计算长度,但是,由于这些函数并非PHP的核心函数,所以,它们常常有可能没有开启.当然,如果是用的自己的服务器,则只要在php.ini中开启即可.如果是用的虚拟主机,而服务器又没有开启这方面的函数的话,那就需要我们自己写出点适合咱自己的函数来了. 以下几个函数用起来颇为顺手的.不过要知道,得在utf-8环境下使用. header('Content-type:text/html;charset=utf-8'…
在做PHP开发的时候,由于我国的语言环境问题,所以我们常常需要对中文进行处理.在PHP中,我们都知道有专门的mb_substr和mb_strlen函数,可以对中文进行截取和计算长度,但是,由于这些函数并非PHP的核心函数,所以,它们常常有可能没有开启.当然,如果是用的自己的服务器,则只要在php.ini中开启即可.如果是用的虚拟主机,而服务器又没有开启这方面的函数的话,那就需要我们自己写出点适合咱国情的函数来了. 以下几个函数用起来颇为顺手的.不过要知道,得在utf-8环境下使用. header…
好几天没写博客了,其实有好多需要总结的,因为最近一直在忙着做项目,但是困惑了几天的Smarty模板中截取包含中英文混合的字符串乱码的问题,终于解决了,所以记录下来,需要的朋友看一下: 出现乱码的原因: 对于字符串的截取,truncate函数只适合英文用户,对与中文用户来说,使用 truncate会出现乱码,而且对于中文英文混合串来说,截取同样个数的字符串,实际显示长度上却不同,一个中文的长度大致相当于两个英文的长度.此外,truncate不能同时兼容GB2312.UTF-8等编码. 解决方法:自…
转载:http://blog.sina.com.cn/s/blog_694c144f010179wj.html 真正好用的PHP截取中文无乱码函数——cutstr (2012-07-09 11:17:34)   最近给公司做项目,多多少少也积累了一些经验,发现了一个真正好用的PHP截取中文无乱码的函数,这就是discuz的include目录中的global.func.php文件中自带的function cutstr函数.cutstr函数的完整代码如下:function cutstr($strin…
截取中文字符串时出现乱码(使用substr()函数) 程序一:PHP截取中文字符串方法 function msubstr($str, $start, $len) {    $tmpstr = "";    $strlen = $start + $len;    for($i = 0; $i < $strlen; $i++) {        if(ord(substr($str, $i, 1)) > 0xa0) {            $tmpstr .= substr(…