php截取中文字符串,在给定字符串第一次出现的位置处进行截取,截取100个字符。
如题,利用下面两种方式进行截取,发现取出的结果都不对,请大家指点下。
其中$word为将要被截取的字符串,$key_word为给定的子串
方法一:
- PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->mb_substr($word,strpos($word,$key_word)/3,100,'utf-8');
方法二:
- PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->$start_key = mb_strpos($word,$key_word);$start_key = $start_key>0?$start_key:0;mb_substr($word,$start_key,100,'utf-8');
------解决方案--------------------
我发现了一个很好用的函数,mb_strimwidth($str, 0, 80, '', 'utf8'),安字符宽度截取
------解决方案--------------------
我真汗了, 不懂编码的人写出来的代码真心让人蛋疼, 都懂的.
记住,strstr/strpos这些是给ASCII字符串用的,也就是1字节1字节比对的,根本不在乎编码,对于GBK/UTF8,在一定情况下也可以正常工作,因为GBK/UTF8的非ASCII字符的单字节都是第7位为1的,但GBK码容易出问题,因为两个2字节字符的1字节拼起来可能造成错误匹配。
MB就是认编码的函数了,所以传给他的以及它返回的数字都是字符数,不是字节数。
你看你第一个代码用strpos了,要是utf8编码还行,其他的说实话都不行。UTF8也就算了,你还假定字符都是3字节。。。这就错了。
第二个代码就靠谱多了,可惜mb_strpos你又没告诉它encoding,这不就完蛋了。
------解决方案--------------------
mb_string 函数组不是这么用法的
mb_internal_encoding("utf-8");
mb_substr($word, mb_strpos($word, $key_word), 100);
------解决方案--------------------
- PHP code
//字符串截取,所有字符长度都是1,gbk、utf-8通用。function cut($str, $len = 12, $dot = '...') { if (mb_strlen($str, "utf-8")

在之前的文章《实用Word技巧分享:详解怎么更改图片颜色和形状》中,我们了解了更改图片颜色和图片形状的方法。而今天我们来聊一聊word表格,讲解美化表格--自定义表格样式的方法,快来看看吧!

在之前的文章《实用Word技巧分享:聊聊你没用过的“行号”功能》中,我们了解了Word中你肯定没用过的"行号”功能。今天继续实用Word技巧分享,看看Excel表格怎么借用Word进行分栏打印,快来收藏使用吧!

在之前的文章《实用Word技巧分享:设置页码的终极方法!》中,我们学习了Word页码的设置方法。而今天我们来一起聊聊Word文本间距设置的几个技巧,快来收藏使用吧!

在之前的文章《实用Word技巧分享:隐藏图片,提升文档浏览和编辑效率!》中,我们学习了隐藏图片的技巧,可提升文档浏览和编辑效率。下面本篇文章再给大家分享一个实用Word技巧,看看怎么让页面自动滚动,快来收藏使用吧!

在之前的文章《实用Word技巧分享:表格自定义样式,美化表格!》中,我们了解了自定义表格样式的方法。而今天我们来聊一聊word脚注和尾注,介绍一下脚注和尾注的设置使用方法,快来看看吧!

在之前的文章《实用Word技巧分享:怎么跨文档快速复制样式》中,我们了解了在文档间快速复制样式的方法。今天我们聊聊Word快捷键,聊聊【F4】键快速统一图片大小,快来看看吧!

在之前的文章《实用Word技巧分享:如何一键删除所有数字》中,我们学习了Word中一键删除所有数字的方法。而今天我们来聊聊Word表格中如何自动添加编号,简单却很实用!

在之前的文章《实用Word技巧分享:图、表如何自动编号?》中,我们了解了Word排版-让图、表自动编号的方法。而今天聊聊Word精确控制页面“行数”和“字符个数”的方法,快来看看吧!


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Atom editor mac version download
The most popular open source editor

Dreamweaver CS6
Visual web development tools

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Zend Studio 13.0.1
Powerful PHP integrated development environment
