php substr 中文截取乱码解决办法
【性价之王】 | 【线路之王】 | 【价格之王】 | 【配置之王】 |
【免费之王】 | 【香港首推】 | 【梯子之王】 | 【独服之王】 |
在 php 中使用 substr 函数进行中文字符串截取时,有可能会产生乱码,因为中文的两种常用编码格式中:UTF-8 编码,每个汉字占 3 字节,而 GB2312 编码中,每个汉字占 2 字节,英文占 1 字节,这就导致很多时候 substr()硬生生地将一个中文字符“锯”成两半,造成断开的字符会把其后的..拉过来一起做一个字,所以出现了 php substr 中文乱码。
解决方法一:使用 mb_substr 函数。
mb_substr (PHP 4 >= 4.0.6, PHP 5, PHP 7) — 获取部分字符串
string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] )
根据字符数执行一个多字节安全的 substr() 操作。 位置是从 str 的开始位置进行计数。 第一个字符的位置是 0。第二个字符的位置是 1,以此类推。
解决方法二:编写自定义函数。
function sub_str($str, $length = , $append = true) { $str = trim($str); $strlength = strlen($str); if ($length == || $length >= $strlength) { return $str; //截取长度等于或大于等于本字符串的长度,返回字符串本身 } elseif ($length < ) //如果截取长度为负数 { $length = $strlength + $length;//那么截取长度就等于字符串长度减去截取长度 if ($length < ) { $length = $strlength;//如果截取长度的绝对值大于字符串本身长度,则截取长度取字符串本身的长度 } } if (function_exists('mb_substr')) { $newstr = mb_substr($str, , $length, EC_CHARSET); } elseif (function_exists('iconv_substr')) { $newstr = iconv_substr($str, , $length, EC_CHARSET); } else { //$newstr = trim_right(substr($str, , $length)); $newstr = substr($str, , $length); } if ($append && $str != $newstr) { $newstr .= '...'; } return $newstr; }
[永久免费VPS 香港VPS]历史优惠活动内容
猜你可能想看的VPS
- 一般-KTS24→€2.5 月 4G 内存 25GB SSD 硬盘 1G全球[VPS测评]
- 便宜 35 元 月 512M 内存 10G SSD 1000G 流量@1全球[VPS测评]
- 搬瓦工最便宜的美国 CN2 VPS 全线补货啦,2 核 1G 内存年付仅美国VPS[主机]
- 优质低价 racknerd→“白色情人节”便宜 VPS 限量 100 个全球[VPS测评]
- 玩具-JustHost→11 元 月 1 核 512M 内存 5G 硬盘全球[VPS测评]
- MySQL 修改字段类型或长度全球[VPS测评]
- 快快云→CDN 阿里云 CDN 和腾讯云 CDN 代理 免费送 500G全球[VPS测评]
- 稳定高速 CeRaNetworks 香港服务器 4 核 16GB $18香港VPS[主机]
- 优惠 OneVPS→日本机房 VPS 全线降价 512M 2T 流量套餐日本VPS[主机]
- 口碑不行-Hostsolutions→2 年付 70 欧元 罗马尼亚 V虚拟空间(主机)
- js 比较两个时间大小函数全球[VPS测评]
- WordPress插件:Redirection和WP Permalink全球[VPS测评]
- WordPress后台reCaptcha验证登录保护插件:reCaptC全球[VPS测评]
- RangCloud 推出山东联通NATVPS 256m内存1T流量100全球[VPS测评]
- idc.wiki 1核心 1G内存 15G SSD 300G上行流量 1全球[VPS测评]
- 中国跨境电商,如何掘金欧洲市场?全球[VPS测评]
- 2022年有哪些顶级托管服务提供商全球[VPS测评]
- 又一跨境电商产业园落户!中山石岐签约引进16个项目全球[VPS测评]
- 买了一台云服务器到底能干什么?全球[VPS测评]
- 六一云:国内BGP高防vps套餐,1核/1G/2Mbps/香港CN2,月香港VPS[主机]
- 快速云:云计算分类和云计算的特点全球[VPS测评]
- 印象云,香港安畅CN2VPS终身8折1核1G22元/月,美国CN2高防V美国VPS[主机]
- 翔云网络怎么样?香港云服务器优惠99/月,国内4核4G高防服务器6800香港VPS[主机]
- 轻云互联,香港VPS月付22元 美国VPS月付19元美国VPS[主机]
- 品光网络:香港美国免备案云服务器超低价,2核2G2M年付仅750元/年美国VPS[主机]
- 腾讯云秒杀活动:1核/2G/上海&北京,年付99元全球[VPS测评]
- 品光网络怎么样?香港美国服务器/云/高防,开年采购3.5折起美国VPS[主机]
- RFCHost:1核1G洛杉矶vps/15GB空间/1TB流量/KVM/虚拟空间(主机)
- 情画数据:香港沙田CN2云服务器,2核/2G/5M带宽,年付200元香港VPS[主机]
- MineServer:香港cn2/日本cn2云服务器,2核/2G/35G虚拟空间(主机)
转载请注明原文地址:https://www.motoll.com/read-214414.html