PHP strtok()函数的优点分析


Posted in PHP onMarch 02, 2010

其优点是:

1、可以一次定义多个分隔符。函数在执行时,是按单个分隔符来切割,而不是按整个分隔符,而explode则是按整个分隔串来切割的。正因此,explode可以用中文切割,而strtok则不行,会乱码。

2、在使用while或for配合strtok()遍历时,可以随时更换分隔符,也可以随时用break跳出终止切割。

示例1:演示用中文+explode来切割

$string = "这是PHP论坛 论坛版块 论坛栏目 论坛H管理员 论坛会员"; $arr = explode("论坛",$string); foreach($arr as $v) { echo $v."
"; } echo "-------------
";

返回:

这是PHP 版块 栏目 H管理员 会员 -------------

示例2:演示更换切割符,注意后面WHILE中不再带有“H”分隔符。而只是用空格。

$string = "这是PHP论坛 论坛版块 论坛栏目 论坛H管理员 论坛会员"; $tok = strtok($string, " H"); //空格+H $n=1; while ($tok !== false) { echo "$tok
"; $tok = strtok(" "); //空格 //if($n>2)break; //可以随时跳出。 //$n++; } echo "-------------
";

返回:

这是P P论坛 论坛版块 论坛栏目 论坛H管理员 论坛会员 -------------

示例3:演示多分隔符。

$string = "This is\tan example\nstring"; $tok = strtok($string, " \n\t"); #空格,换行,TAB while ($tok !== false) { echo "$tok
"; $tok = strtok(" \n\t"); } echo "-------------
";

返回:

This is an example string -------------

$string = "abcde 123c4 99sadbc99b5232"; $tok = strtok($string, "bc"); while ($tok !="") { echo "$tok
"; $tok = strtok("bc"); } echo "-------------
";

返回:

a de 123 4 99sad 99 5232 -------------

示例4:演示用for来遍历:

$line = "leon\tatkinson\tleon@clearink.com"; for($token = strtok($line,"\t");$token!="";$token=strtok("\t")) { print("token: $token
\n"); }

返回:

token: leon token: atkinson token: leon@clearink.com
PHP 相关文章推荐
PHP生成HTML静态页面实例代码
Aug 31 PHP
解析PayPal支付接口的PHP开发方式
Nov 28 PHP
php中将时间差转换为字符串提示的实现代码
Aug 08 PHP
PHP 年龄计算函数(精确到天)
Jun 07 PHP
PHP类继承 extends使用介绍
Jan 14 PHP
php 检查电子邮件函数(自写)
Jan 16 PHP
PHP生成RSS文件类实例
Dec 05 PHP
PHP获取数组长度或某个值出现次数的方法
Feb 11 PHP
PHP保存session到memcache服务器的方法
Jan 19 PHP
简单介绍PHP非阻塞模式
Mar 03 PHP
php array_slice 取出数组中的一段序列实例
Nov 04 PHP
PHP判断函数是否被定义的方法
Jun 21 PHP
关于PHP5 Session生命周期介绍
Mar 02 #PHP
PHP正则的Unknown Modifier错误解决方法
Mar 02 #PHP
php is_file()和is_dir()用于遍历目录时用法注意事项
Mar 02 #PHP
php 读取shell管道传输过来的内容
Mar 01 #PHP
php 连接mssql数据库 初学php笔记
Mar 01 #PHP
discuz authcode 经典php加密解密函数解析
Jul 12 #PHP
php下使用SimpleXML 处理XML 文件
Feb 27 #PHP
You might like
服务器端解压缩zip的脚本
2006/12/22 PHP
dedecms后台验证码总提示错误的解决方法
2007/03/21 PHP
php学习笔记 PHP面向对象的程序设计
2011/06/13 PHP
jQuery EasyUI API 中文文档 - DateBox日期框
2011/10/15 PHP
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
2011/10/31 PHP
解析PHP工厂模式的好处
2013/06/18 PHP
php中json_encode UTF-8中文乱码的更好解决方法
2014/09/28 PHP
yii2.0框架实现上传excel文件后导入到数据库的方法示例
2020/04/13 PHP
通过Mootools 1.2来操纵HTML DOM元素
2009/09/15 Javascript
JS打开图片另存为对话框实现代码
2012/12/26 Javascript
固定表格行列(expression)在IE下适用
2013/07/25 Javascript
js写出遮罩层登陆框和对联广告并自动跟随滚动条滚动
2014/04/29 Javascript
js计算时间差代码【包括计算,天,时,分,秒】
2016/04/26 Javascript
轻松掌握JavaScript享元模式
2016/08/27 Javascript
原生JS实现九宫格抽奖效果
2017/04/01 Javascript
微信小程序日历组件calendar详解及实例
2017/06/08 Javascript
Windows下Node.js安装及环境配置方法
2017/09/18 Javascript
vue 项目地址去掉 #的方法
2018/10/20 Javascript
koa2实现登录注册功能的示例代码
2018/12/03 Javascript
vue多次循环操作示例
2019/02/08 Javascript
js核心基础之构造函数constructor用法实例分析
2019/05/11 Javascript
微信小程序开发注意指南和优化实践(小结)
2019/06/21 Javascript
Windows下安装 node 的版本控制工具 nvm
2020/02/06 Javascript
django简单的前后端分离的数据传输实例 axios
2020/05/18 Javascript
JavaScript实现拖拽和缩放效果
2020/08/24 Javascript
JavaScript实现4位随机验证码的生成
2021/01/28 Javascript
通过Python使用saltstack生成服务器资产清单
2016/03/01 Python
Python实现注册登录系统
2017/08/08 Python
Python模块的加载讲解
2019/01/15 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
CSS3对图片照片进行边缘模糊处理的实现
2018/08/08 HTML / CSS
ECCO爱步加拿大官网:北欧丹麦鞋履及皮具品牌
2017/07/08 全球购物
入党自我评价范文
2014/02/02 职场文书
党员教师工作决心书
2014/03/13 职场文书
遵纪守法演讲稿
2014/05/23 职场文书
市场营销策划方案
2014/06/11 职场文书