PHP explode()函数的几个应用和implode()函数有什么区别


Posted in PHP onNovember 05, 2015

explode()函数介绍

explode() 函数可以把字符串分割为数组。

语法:explode(separator,string,limit)。

参数 描述
separator 必需。规定在哪里分割字符串。
string 必需。要分割的字符串。
limit 可选。规定所返回的数组元素的数目。 可能的值: 大于 0 - 返回包含最多 limit 个元素的数组 小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组 0 - 返回包含一个元素的数组

本函数返回由字符串组成的数组,其中的每个元素都是由 separator 作为边界点分割出来的子字符串。

separator 参数不能是空字符串。如果 separator 为空字符串(""),explode() 将返回 FALSE。如果 separator 所包含的值在 string 中找不到,那么 explode() 将返回包含 string 中单个元素的数组。

如果设置了 limit 参数,则返回的数组包含最多 limit 个元素,而最后那个元素将包含 string 的剩余部分。

如果 limit 参数是负数,则返回除了最后的 -limit 个元素外的所有元素。此特性是 PHP 5.1.0 中新增的。

Program List:explode()例子

<?php
// Example 
$fruit = "Apple Banana Orange Lemon Mango Pear";
$fruitArray = explode(" ", $fruit);
echo $fruitArray[]; // Apple
echo $fruitArray[]; // Banana
// Example 
$data = "gonn:*:nowamagic:::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // gonn
echo $pass; // *
?>

程序运行结果:

Apple
Banana
gonn
*

Program List:使用limit参数的explode()例子

<?php
$str = 'one|two|three|four';
// positive limit
print_r(explode('|', $str, ));
// negative limit (since PHP .)
print_r(explode('|', $str, -));
?>

程序运行结果:

Array
(
  [] => one
  [] => two|three|four
)
Array
(
  [] => one
  [] => two
  [] => three
)

Program List:将字符串化为键值数组

<?php
// converts pure string into a trimmed keyed array
function stringKeyedArray($string, $delimiter = ',', $kv = '=>') {
 if ($a = explode($delimiter, $string)) { // create parts
  foreach ($a as $s) { // each part
   if ($s) {
    if ($pos = strpos($s, $kv)) { // key/value delimiter
     $ka[trim(substr($s, , $pos))] = trim(substr($s, $pos + strlen($kv)));
    } else { // key delimiter not found
     $ka[] = trim($s);
    }
   }
  }
  return $ka;
 }
} // stringKeyedArray
$string = 'a=>, b=>, $a, c=>%, true, d=>ab c';
print_r(stringKeyedArray($string));
?>

程序运行结果:

Array
(
    [a] =>
    [b] =>
    [] => $a
    [c] => %
    [] => true
    [d] => ab c
)

PS:PHP函数implode()与explode()函数的不同之处

以上内容给大家介绍了explode() 函数的具体用法。当我们遇到 PHP函数implode()把数组元素组合为一个字符串。

implode(separator,array)

separator 可选。规定数组元素之间放置的内容。默认是 ""(空字符串)。

array 必需。要结合为字符串的数组。

虽然 separator 参数是可选的。但是为了向后兼容,推荐您使用使用两个参数。

PHP函数implode()的例子

<?php 
$arr = array('Hello','World!','Beautiful','Day!'); 
echo implode(" ",$arr); 
?>

输出:

Hello World! Beautiful Day!

上面这段代码示例就是PHP函数implode()的具体实现功能的展现。

PHP 相关文章推荐
PHP:风雨欲来 路在何方?
Oct 09 PHP
《PHP编程最快明白》第五讲:php目录、文件操作
Nov 01 PHP
php使用mb_check_encoding检查字符串在指定的编码里是否有效
Nov 07 PHP
php面向对象中的魔术方法中文说明
Mar 04 PHP
php实现的一个简单json rpc框架实例
Mar 30 PHP
PHP中返回引用类型的方法
Apr 03 PHP
谈谈PHP中substr和substring的正确用法及相关参数的介绍
Dec 16 PHP
PHP基于单例模式实现的数据库操作基类
Jan 15 PHP
php通过文件头判断格式的方法
May 28 PHP
PHP正则表达式匹配替换与分割功能实例浅析
Feb 04 PHP
php操作mongodb封装类与用法实例
Sep 01 PHP
php多进程并发编程防止出现僵尸进程的方法分析
Feb 28 PHP
双冒号 ::在PHP中的使用情况
Nov 05 #PHP
php根据用户语言跳转相应网页
Nov 04 #PHP
非常全面的php日期时间运算汇总
Nov 04 #PHP
php对文件夹进行相关操作(遍历、计算大小)
Nov 04 #PHP
PHP实现HTML页面静态化的方法
Nov 04 #PHP
php实现网站留言板功能
Nov 04 #PHP
php对二维数组进行相关操作(排序、转换、去空白等)
Nov 04 #PHP
You might like
PHP中对数据库操作的封装
2006/10/09 PHP
PHP常用的三种设计模式
2017/02/17 PHP
php+jQuery实现的三级导航栏下拉菜单显示效果
2017/08/10 PHP
jQuery库与其他JS库冲突的解决办法
2010/02/07 Javascript
jquery实现将获取的颜色值转换为十六进制形式的方法
2014/12/20 Javascript
jQuery实现拖拽可编辑模块功能代码
2017/01/12 Javascript
javascript数据类型详解
2017/02/07 Javascript
js 获取图像缩放后的实际宽高,位置等信息
2017/03/07 Javascript
node.js express中app.param的用法详解
2017/07/16 Javascript
关于Promise 异步编程的实例讲解
2017/09/01 Javascript
js将键值对字符串转为json字符串的方法
2018/03/30 Javascript
vue canvas绘制矩形并解决由clearRec带来的闪屏问题
2019/09/02 Javascript
es6函数name属性功能与用法实例分析
2020/04/18 Javascript
vue通过v-html指令渲染的富文本无法修改样式的解决方案
2020/05/20 Javascript
vue实现编辑器键盘抬起时内容跟随光标距顶位置向上滚动效果
2020/05/28 Javascript
python使用clear方法清除字典内全部数据实例
2015/07/11 Python
python中reader的next用法
2018/07/24 Python
Python中对数组集进行按行打乱shuffle的方法
2018/11/08 Python
浅谈Python编程中3个常用的数据结构和算法
2019/04/30 Python
python中时间模块的基本使用教程
2019/05/14 Python
python类中super() 的使用解析
2019/12/19 Python
Python使用uuid库生成唯一标识ID
2020/02/12 Python
OpenCV4.1.0+VS2017环境配置的方法步骤
2020/07/09 Python
利用Python将多张图片合成视频的实现
2020/11/23 Python
Python爬虫之Selenium多窗口切换的实现
2020/12/04 Python
css3通过scale()、rotate()实现放大、旋转
2020/03/19 HTML / CSS
canvas绘制树形结构可视图形的实现
2020/04/03 HTML / CSS
比利时买床:Beter Bed
2017/12/06 全球购物
主持人婚宴答谢词
2014/01/28 职场文书
毕业生就业推荐表自我鉴定
2014/03/20 职场文书
党支部公开承诺书
2014/03/28 职场文书
大学生社会实践方案
2014/05/11 职场文书
法人代表身份证明书及授权委托书
2014/09/16 职场文书
篮球赛新闻稿
2015/07/17 职场文书
中学后勤工作总结2015
2015/07/22 职场文书
保姆聘用合同
2015/09/21 职场文书