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读取IMAP邮件
Oct 09 PHP
php中处理模拟rewrite 效果
Dec 09 PHP
PHP 模板高级篇总结
Dec 21 PHP
PHP 可阅读随机字符串代码
May 26 PHP
PHP时间戳与日期之间转换的实例介绍
Apr 19 PHP
php获得url参数中具有&的值的方法
Mar 05 PHP
在Nginx上部署ThinkPHP项目教程
Feb 02 PHP
高质量PHP代码的50个实用技巧必备(下)
Jan 22 PHP
PHP文件上传、客户端和服务器端加限制、抓取错误信息、完整步骤解析
Jan 12 PHP
Linux下 php7安装redis的方法
Nov 01 PHP
phpfpm的作用和用法
Oct 10 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
Jul 24 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 Smarty生成EXCEL文档的代码
2008/08/23 PHP
PHP开发中常见的安全问题详解和解决方法(如Sql注入、CSRF、Xss、CC等)
2014/04/21 PHP
php基于websocket搭建简易聊天室实践
2016/10/24 PHP
使用vs code编辑调试php配置的方法
2019/01/29 PHP
php5对象复制、clone、浅复制与深复制实例详解
2019/08/14 PHP
js 获取中文拼音,Select自动匹配字母获取值的代码
2009/09/23 Javascript
两种简单实现菜单高亮显示的JS类代码
2010/06/27 Javascript
Javascript 类型转换方法
2010/10/24 Javascript
js获取或设置当前窗口url参数的小例子
2013/10/14 Javascript
nodejs的10个性能优化技巧
2014/07/15 NodeJs
微信分享的标题、缩略图、连接及描述设置方法
2014/10/14 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
2016/04/14 Javascript
NodeJS连接MongoDB数据库时报错的快速解决方法
2016/05/13 NodeJs
react-navigation之动态修改title的内容
2018/09/26 Javascript
详解Vue 动态组件与全局事件绑定总结
2018/11/11 Javascript
JavaScript实现的级联算法示例【省市二级联动功能】
2018/12/25 Javascript
Vuex新手的理解与使用详解
2019/05/31 Javascript
微信小程序设置滚动条过程详解
2019/07/25 Javascript
Vue+abp微信扫码登录的实现代码示例
2020/01/06 Javascript
在vue中使用el-tab-pane v-show/v-if无效的解决
2020/08/03 Javascript
用python 制作图片转pdf工具
2015/01/30 Python
浅谈python jieba分词模块的基本用法
2017/11/09 Python
tensorflow中next_batch的具体使用
2018/02/02 Python
python 解决动态的定义变量名,并给其赋值的方法(大数据处理)
2018/11/10 Python
python开发准备工作之配置虚拟环境(非常重要)
2019/02/11 Python
python自动脚本的pyautogui入门学习
2020/04/01 Python
Python devel安装失败问题解决方案
2020/06/09 Python
CSS3 绘制BMW logo实的现代码
2013/04/25 HTML / CSS
html5 Web SQL Database 之事务处理函数transaction与executeSQL解析
2013/11/07 HTML / CSS
欧洲顶级体育电子商务网站:SportsShoes.com
2018/03/27 全球购物
女装和独特珠宝:Sundance Catalog
2018/09/19 全球购物
幼儿园健康教育方案
2014/06/14 职场文书
简单通用的简历自我评价
2014/09/21 职场文书
2015迎新晚会开场白
2015/05/29 职场文书
婚庆主持词大全
2015/06/30 职场文书
python爬不同图片分别保存在不同文件夹中的实现
2021/04/02 Python