`

PHP 不区分中英文截取utf8字符串

阅读更多
<?php
header('Content-Type: text/html; charset=utf-8');
//截取utf8字符串
function utf8Substr($str='', $start=0, $len=10)
{
    return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$start.'}'.
        '((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s',
        '$1',$str);
}
echo utf8Substr('阅谁问君诵,水落清香浮。',8,2),PHP_EOL;
echo utf8Substr('吴者然onestopweb');

 

效果图:

 

 

 

 

 

 

 

 

 

 

 

  • 大小: 10.9 KB
1
0
分享到:
评论

相关推荐

    php截取字符串之截取utf8或gbk编码的中英文字符串示例

    php中自带strlen是返回的字节数,对于utf8编码的中文返回时3个,不满足需求。mb_strlen 可以根据字符集计算长度,比如utf8的中文计数为1,但这不符合微博字数限制需求,中文必须计算为2才可以。google了下,找到一个...

    统计字符串中英文标点数量并截取.zip

    批量统计多字符串中[中英文标点数量],根据给定gbk/utf编码,计算出总长度。若总长度超过给定(最大)长度,则自动截取。使用场景:配合注解以及aop,解决录入数据库超长会报错的情况。

    PHP中使用substr()截取字符串出现中文乱码问题该怎么办

    但字符串只要出现中文字符,就有可能导致PHP substr中文乱码,因为中文UTF-8编码,每个汉字占3字节,而GB2312占2字节,英文占1字节,截取位数不准确,substr()硬生生地将一个中文字符“锯”成两半,造成断开的字符会...

    php 截取utf-8格式的字符串实例代码

    php 截取utf-8格式的字符串 php中,我们经常需要截取字符串。英文字符占用一个字节,中文字符占用两个字节,但中文字符占用两个字节是相对于GBK编码而言但是在时下国际流行的UTF8编码中,一个中文字符占用3个字节。...

    PHP正确解析UTF-8字符串技巧应用

    php /* 程序功能,$str是中英文混合的UTF-8编码字符串, 将此字符串根据UTF-8的编码规则正确的解码并显示。 */ $str = ‘今天非常Happy,所有决定去KFC吃可乐鸡翅!!!’; /* $str 是待截取的字符串 $len 是截取的字符...

    THINKPHP截取中文字符串函数实例代码

    在项目开发中,我们常常会遇到英文、中文等字符串截取问题,比如说新闻列表页面需要新闻内容简介,这就要用到字符串截取了。 下面就为大家分享一个THINKPHP中已经准备好的字符串截取函数。 # 函数解释: msubstr($...

    Python实现简单截取中文字符串的方法

    web应用难免会截取字符串的需求,Python中截取英文很容易: &gt;&gt;&gt; s = 'abce' &gt;&gt;&gt; s[0:3] 'abc' 但是截取utf-8的中文机会截取一半导致一些不是乱码的乱码.其实utf8截取很简单,这里记下来作为备忘 #-*- coding:utf8 -*...

    php轻松实现中英文混排字符串截取

    复制代码 代码如下:mb_strimwidth($str, $start, $width, $tail, $encoding) 按宽度截取字符串$str 要截取的字符串$start 从哪个位置开始截取,默认是0$width 要截取的宽度$tail 追加到截取字符串后边的字符串,常用...

    解析使用substr截取UTF-8中文字符串出现乱码的问题

    我们知道有时候使用substr来截取UTF-8中文字符串的时候,经常会出现乱码,为什么会出现这样的问题呢,本文告诉你答案。看这样一段代码吧(字符编码为UTF-8): 复制代码 代码如下:&lt;?$str = ‘都知道strlen与mb_...

    Python中文字符串截取问题

    web应用难免会截取字符串的需求,Python中截取英文很容易,但是截取utf-8的中文机会截取一半导致一些不是乱码的乱码.其实utf8截取很简单,这里记下来分享给大家

    PHP针对中英文混合字符串长度判断及截取方法示例

    本文实例讲述了PHP针对中英文混合字符串长度判断及截取方法。分享给大家供大家参考,具体如下: /** * * 中英混合字符串长度判断 * @param unknown_type $str * @param unknown_type $charset */ function str...

    Thinkphp模板中截取字符串函数简介

    在php中截取字符串的函数有很多,而在thinkphp中也可以直接使用php的函数,本文给大家简单的介绍thinkPHP模板中截取字符串的具体用法,希望能对各位有所帮助。 对于英文字符可使用如下形式: 复制代码 代码如下: {$...

    C++如何过滤出字符串的中文(GBK、UTF-8)

    最近在处理游戏敏感词之类的东西,为了加强屏蔽处理,所以需要过滤掉字符串中的除汉字之外的是其他东西如数字,符号,英文字母等。 首先我查阅资料并写了个函数: 示例:返回输入字符串中汉字的个数: std::string ...

    PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]

    在PHP中,使substr函数截取字符串末位会出现乱码,因为中文UTF-8编码,每个汉字占3字节,而GB2312占2字节,英文占1字节,截取位不准确,造成断开的字符会把其后的..拉过来一起做一个字,所以出现了乱码。

    PHP函数库,PHP函数大全,PHP函数实例,PHP函数手册,PHP5函数库实例

    PHP判断字符串是否UTF8格式 php判断爬虫函数 PHP判断远程文件是否存在 PHP图片处理类:缩略,裁剪,圆角,倾斜 PHP多功能图片处理类 PHP多重判断删除文件函数 PHP实现英文标题的正确大写 PHP常用图片处理类 ...

    php strlen mb_strlen计算中英文混排字符串长度

    这里主要比较一下,中英文混排的时候,两个计算结果。(测试时编码方式是UTF8) 复制代码 代码如下:&lt;?php $str=‘中文a字1符‘; echo strlen($str); echo ‘ ‘; echo mb_strlen($str,‘UTF8‘); //输出结果 /...

    PHP UTF8中文字符截断函数代码

    php中英文混合字符截断不乱码函数(utf8) 复制代码 代码如下://utf8格式下的中文字符截断//$sourcestr 是要处理的字符串//$cutlength 为截取的长度(即字数)//$addstr 超过长度时在尾处加上的字符function cut_str($...

Global site tag (gtag.js) - Google Analytics