php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析


Posted in PHP onJune 10, 2014

示例代码,用到了函数substr与iconv_substr,mb_substr

<html>
<head><meta charset='utf-8'>
<title>截取中文字符串_三水点靠木_3water.com</title>
</head>
<body>
<?php
$str='123三水点靠木456欢迎大家的光临';
echo substr($str,0,4);
echo '<br>';
echo iconv_substr($str,0,4,'utf-8');
echo '<br>';
echo mb_substr($str,0,4,'utf-8');
?>
</body>
</html>

说明:
以上代码用到了二个函数iconv_substr和mb_substr,均可以在当前字符下进行字符串截取,以达到中文字符截取的不乱码。

应该如何选择呢?

1、iconv库在某些操作系统上可能运行不正确,需要安装GNU扩展库以保证它的正常运行。mb_substr函数的兼容性更好。

2、iconv函数会先将当前字符串转换为相应的编码再进行截取,而mb函数则是直接根据指定的编码进行截取(提供安全的多字节截取),所以mb函数的截取效率更高。

因此,mb_substr函数进行中文字符串的截取为最合适的选择。

PHP 相关文章推荐
解析php如何将日志写进syslog
Jun 28 PHP
php画图实例
Nov 05 PHP
PHP使用json_encode函数时不转义中文的解决方法
Nov 12 PHP
php实现递归抓取网页类实例
Apr 03 PHP
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
May 21 PHP
php版微信自动登录并获取昵称的方法
Sep 23 PHP
Yii2学习笔记之汉化yii设置表单的描述(属性标签attributeLabels)
Feb 07 PHP
利用PHPStorm如何开发Laravel应用详解
Aug 30 PHP
PHP调用接口用post方法传送json数据的实例
May 31 PHP
laravel执行php artisan migrate报错的解决方法
Oct 09 PHP
Laravel 微信小程序后端实现用户登录的示例代码
Nov 26 PHP
laravel框架中间件简单使用方法示例
Jan 25 PHP
一个严格的PHP Session会话超时时间设置方法
Jun 10 #PHP
解决CodeIgniter伪静态失效
Jun 09 #PHP
CI(CodeIgniter)框架介绍
Jun 09 #PHP
CI框架中集成CKEditor编辑器的教程
Jun 09 #PHP
PHP小教程之实现链表
Jun 09 #PHP
浅谈Eclipse PDT调试PHP程序
Jun 09 #PHP
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
Jun 09 #PHP
You might like
php实现XSS安全过滤的方法
2015/07/29 PHP
PHP简单创建压缩图的方法
2016/08/24 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
2017/09/17 PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
2019/02/13 PHP
ext for eclipse插件安装方法
2008/04/27 Javascript
关于Jqzoom的使用心得 jquery放大镜效果插件
2010/04/12 Javascript
jQuery 学习第七课 扩展jQuery的功能 插件开发
2010/05/17 Javascript
javascript 构造函数强制调用经验总结
2012/12/02 Javascript
js获取php变量的实现代码
2013/08/10 Javascript
JS操作JSON要领详细总结
2013/08/25 Javascript
vue.js移动端app实战1:初始配置详解
2017/07/24 Javascript
JavaScript实现鼠标滚轮控制页面图片切换功能示例
2017/10/14 Javascript
Vue路由history模式解决404问题的几种方法
2018/09/29 Javascript
微信小程序开发之点击按钮退出小程序的实现方法
2019/04/26 Javascript
layerui代码控制tab选项卡,添加,关闭的实例
2019/09/04 Javascript
详解ES6 CLASS在微信小程序中的应用实例
2020/04/24 Javascript
Python生成pdf文件的方法
2014/08/04 Python
Python中的filter()函数的用法
2015/04/27 Python
Python的Flask框架应用程序实现使用QQ账号登录的方法
2016/06/07 Python
Python iter()函数用法实例分析
2018/03/17 Python
python:动态路由的Flask程序代码
2019/11/22 Python
Anaconda 查看、创建、管理和使用python环境的方法
2019/12/03 Python
centos7中安装python3.6.4的教程
2019/12/11 Python
Python利用逻辑回归模型解决MNIST手写数字识别问题详解
2020/01/14 Python
HTML5之SVG 2D入门4—笔画与填充
2013/01/30 HTML / CSS
京东奢侈品:全球奢侈品牌
2018/03/17 全球购物
L’AGENCE官网:加州女装品牌
2018/06/03 全球购物
Elizabeth Gage官网:英国最好的珠宝设计之一
2020/09/26 全球购物
教学质量评估实施方案
2014/03/17 职场文书
机关领导干部作风整顿整改措施
2014/09/19 职场文书
村党的群众路线教育实践活动工作总结
2014/10/25 职场文书
月考总结与反思
2015/10/22 职场文书
2016年五四青年节校园广播稿
2015/12/17 职场文书
如何利用map实现Nginx允许多个域名跨域
2021/03/31 Servers
MySQL 8.0 驱动与阿里druid版本兼容问题解决
2021/07/01 MySQL
Python GUI编程之tkinter 关于 ttkbootstrap 的使用详解
2022/03/03 Python