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 相关文章推荐
跟我学小偷程序之成功偷取首页(第三天)
Oct 09 PHP
通过文字传递创建的图形按钮
Oct 09 PHP
php curl获取网页内容(IPV6下超时)的解决办法
Jul 16 PHP
php实现的获取网站备案信息查询代码(360)
Sep 23 PHP
php实现信用卡校验位算法THE LUHN MOD-10示例
May 07 PHP
教你如何用php实现LOL数据远程获取
Jun 10 PHP
Yii调试SQL的常用方法
Jul 09 PHP
qq登录,新浪微博登录接口申请过程中遇到的问题
Jul 22 PHP
PHP学习笔记(二):变量详解
Apr 17 PHP
分享50个提高PHP执行效率的技巧
Dec 26 PHP
php使用ftp实现文件上传与下载功能
Jul 21 PHP
PHP cookie,session的使用与用户自动登录功能实现方法分析
Jun 05 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
PHP新手NOTICE错误常见解决方法
2011/12/07 PHP
PHP关联数组的10个操作技巧
2013/01/21 PHP
PHP四舍五入精确小数位及取整
2014/01/14 PHP
WordPress用户登录框密码的隐藏与部分显示技巧
2015/12/31 PHP
php mysql实现mysql_select_db选择数据库
2016/12/30 PHP
php实现保存周期为1天的购物车类
2017/07/07 PHP
PHP区块查询实现方法分析
2018/05/12 PHP
使用js判断数组中是否包含某一元素(类似于php中的in_array())
2013/12/12 Javascript
window.print打印指定div实例代码
2013/12/13 Javascript
JS中的异常处理方法分享
2013/12/22 Javascript
JS实现网页背景颜色与select框中颜色同时变化的方法
2015/02/27 Javascript
JS获取表格内指定单元格html内容的方法
2015/03/31 Javascript
关于react-router/react-router-dom v4 history不能访问问题的解决
2018/01/08 Javascript
Vue2实时监听表单变化的示例讲解
2018/08/30 Javascript
微信小程序如何刷新当前界面的实现方法
2019/06/07 Javascript
AngularJS动态生成select下拉框的方法实例
2019/11/17 Javascript
[03:56]显微镜下的DOTA2第十一期——鬼畜的死亡先知播音员
2014/06/23 DOTA
[02:25]专访DOTA2负责人Erik 国际邀请赛暂不会离开西雅
2014/07/21 DOTA
[02:12]探秘2016国际邀请赛中国区预选赛选手房间
2016/06/25 DOTA
[48:51]完美世界DOTA2联赛PWL S2 Magma vs InkIce 第一场 11.28
2020/12/02 DOTA
Python常见数据结构详解
2014/07/24 Python
Python中实现从目录中过滤出指定文件类型的文件
2015/02/02 Python
简单了解python模块概念
2018/01/11 Python
python 读取txt,json和hdf5文件的实例
2018/06/05 Python
win10 64bit下python NLTK安装教程
2018/09/19 Python
python 用下标截取字符串的实例
2018/12/25 Python
Python实现在Windows平台修改文件属性
2020/03/05 Python
解决Keras的自定义lambda层去reshape张量时model保存出错问题
2020/07/01 Python
HTML4和HTML5之间除了相似以外的10个主要不同
2012/12/13 HTML / CSS
办理居住证介绍信
2014/01/15 职场文书
《会变的花树叶》教学反思
2014/02/10 职场文书
2014年公务员思想汇报范文:全心全意为人民服务
2014/03/06 职场文书
2014年招生工作总结
2014/11/26 职场文书
2015暑假打工实践报告
2015/07/13 职场文书
小学班主任工作随笔
2015/08/15 职场文书
个人向公司借款协议书
2016/03/19 职场文书