PHP实现截取中文字符串不出现?号的解决方法


Posted in PHP onDecember 29, 2016

本文实例讲述了PHP实现截取中文字符串不出现?号的解决方法。分享给大家供大家参考,具体如下:

当PHP截取中英文混合字符串时,最后一个汉字经常被拆成两半,例:截取字符串的前18个字

<?php
$text = "1欢迎访问sina新浪播客";
$value = substr($text, 0, 18);
echo $value."<BR>";
?>

输出为结果为:

1欢迎访问新浪?BR>

于是写了以下这段代码,判断如果中英文混合字符串中的汉字字节数为奇数,则少截取一个字节,保证汉字显示完整。

<?php
$text = "1欢迎访问sina新浪播客";
$value = substr($text, 0, 18);
$value_length = strlen($value);
$value_count = 0;
for ($i = 0; $i < $value_length; $i++)
{
  if (ord($value{$i}) > 127)
  {
    $value_count++;
  }
}
if ($value_count % 2 != 0)
{
  $value = substr($text, 0, $value_length - 1);
}
echo $value."<BR>";
?>

输出为结果为:

1欢迎访问sina新浪

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP 输出简单动态WAP页面
Jun 09 PHP
用PHP的超级变量$_GET获取HTML表单(Form) 数据
May 07 PHP
PHP读取文件并可支持远程文件的代码分享
Oct 03 PHP
php实现的替换敏感字符串类实例
Sep 22 PHP
php通过function_exists检测函数是否存在的方法
Mar 18 PHP
discuz图片顺序混乱解决方案
Jul 29 PHP
分享微信扫码支付开发遇到问题及解决方案-附Ecshop微信支付插件
Aug 23 PHP
php基于CodeIgniter实现图片上传、剪切功能
May 14 PHP
Laravel构建即时应用的一种实现方法详解
Aug 31 PHP
PHP array_shift()用法实例分析
Jan 07 PHP
详解PHP 二维数组排序保持键名不变
Mar 06 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
Oct 16 PHP
详解thinkphp实现excel数据的导入导出(附完整案例)
Dec 29 #PHP
PHP实现的XML操作类【XML Library】
Dec 29 #PHP
php常用字符函数实例小结
Dec 29 #PHP
php常用正则函数实例小结
Dec 29 #PHP
详解ThinkPHP3.2.3验证码显示、刷新、校验
Dec 29 #PHP
php常用数组函数实例小结
Dec 29 #PHP
php正则修正符用法实例详解
Dec 29 #PHP
You might like
PHP网站基础优化方法小结
2008/09/29 PHP
供参考的 php 学习提高路线分享
2011/10/23 PHP
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
2012/02/05 PHP
PHP批量删除jQuery操作
2017/07/23 PHP
javascript 出生日期和身份证判断大全
2008/11/13 Javascript
jQuery 学习 几种常用方法
2009/06/11 Javascript
遍历jquery对象的代码分享
2011/11/02 Javascript
Javascript中查找不以XX字符结尾的单词示例代码
2013/10/15 Javascript
jquery 显示*天*时*分*秒实现时间计时器
2014/05/07 Javascript
jquery复选框多选赋值给文本框的方法
2015/01/27 Javascript
input输入密码变黑点密文的实现方法
2017/01/09 Javascript
jQuery插件FusionCharts实现的MSBar3D图效果示例【附demo源码】
2017/03/23 jQuery
页面缩放兼容性处理方法(zoom,Firefox火狐浏览器)
2017/08/29 Javascript
js 显示日期时间的实例(时间过一秒加1)
2017/10/25 Javascript
原生js实现公告滚动效果
2021/01/10 Javascript
iview实现图片上传功能
2020/06/29 Javascript
js+canvas实现五子棋小游戏
2020/08/02 Javascript
Vue登录拦截 登录后继续跳转指定页面的操作
2020/08/04 Javascript
在vue中使用image-webpack-loader实例
2020/11/12 Javascript
[11:57]《一刀刀一天》第十七期:TI中国军团加油!
2014/05/26 DOTA
[04:13]2014DOTA2国际邀请赛 专访DC目前形势不容乐观
2014/07/12 DOTA
python实现获取客户机上指定文件并传输到服务器的方法
2015/03/16 Python
python递归计算N!的方法
2015/05/05 Python
Python数据类型详解(一)字符串
2016/05/08 Python
python matplotlib坐标轴设置的方法
2017/12/05 Python
Python实现分段线性插值
2018/12/17 Python
opencv python如何实现图像二值化
2020/02/03 Python
Django bulk_create()、update()与数据库事务的效率对比分析
2020/05/15 Python
python 实现图片修复(可用于去水印)
2020/11/19 Python
CSS3弹性布局内容对齐(justify-content)属性使用详解
2017/07/31 HTML / CSS
美国鲜花递送:UrbanStems
2021/01/04 全球购物
求职自荐信怎么写
2014/03/06 职场文书
岗位聘任书范文
2014/03/29 职场文书
2014幼儿园卫生保健工作总结
2014/12/05 职场文书
2015年英语教学工作总结
2015/05/25 职场文书
2016计算机专业毕业生自荐信
2016/01/28 职场文书