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中数据的批量导入(csv文件)
Oct 09 PHP
php学习之function的用法
Jul 14 PHP
php实现自动获取生成文章主题关键词功能的深入分析
Jun 03 PHP
php连接odbc数据源并保存与查询数据的方法
Dec 24 PHP
PHP获取photoshop写入图片文字信息的方法
Mar 31 PHP
Session 失效的原因汇总及解决丢失办法
Sep 30 PHP
Yii中Model(模型)的创建及使用方法
Dec 28 PHP
PHP设计模式之简单投诉页面实例
Feb 24 PHP
PHP中__autoload和Smarty冲突的简单解决方法
Apr 08 PHP
PHP时间处理类操作示例
Sep 05 PHP
PHP封装的数据库模型Model类完整示例【基于PDO】
Mar 14 PHP
PHP字符串中抽取子串操作实例分析
Jun 22 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
phpmyadmin MySQL 加密配置方法
2009/07/05 PHP
php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
2009/08/07 PHP
PHP 登录完成后如何跳转上一访问页面
2014/01/14 PHP
PHP+Ajax检测用户名或邮件注册时是否已经存在实例教程
2014/08/23 PHP
jQuery html()等方法介绍
2009/11/18 Javascript
js更优雅的兼容
2010/08/12 Javascript
几种设置表单元素中文本输入框不可编辑的方法总结
2013/11/25 Javascript
Bootstrap每天必学之滚动监听
2016/03/16 Javascript
JQuery插件Marquee.js实现无缝滚动效果
2016/04/26 Javascript
Nodejs学习item【入门手上】
2016/05/05 NodeJs
vue.js学习之递归组件
2016/12/13 Javascript
如何用js判断dom是否有存在某class的值
2017/02/13 Javascript
微信小程序 商城开发(ecshop )简单实例
2017/04/07 Javascript
浅谈JS中的常用选择器及属性、方法的调用
2017/07/28 Javascript
JavaScript实现简单图片轮播效果
2017/08/21 Javascript
vue生成随机验证码的示例代码
2017/09/29 Javascript
AngularJS双向数据绑定原理之$watch、$apply和$digest的应用
2018/01/30 Javascript
复制粘贴功能的Python程序
2008/04/04 Python
Python3实现的腾讯微博自动发帖小工具
2013/11/11 Python
python抓取网页中的图片示例
2014/02/28 Python
跟老齐学Python之网站的结构
2014/10/24 Python
python最长回文串算法
2018/06/04 Python
python实现内存监控系统
2021/03/07 Python
Python使用combinations实现排列组合的方法
2018/11/13 Python
详解在Python中以绝对路径或者相对路径导入文件的方法
2019/08/30 Python
python 负数取模运算实例
2020/06/03 Python
关于webview适配H5上传照片或者视频文件的方法
2020/11/04 HTML / CSS
阳光体育:Sunny Sports(购买露营和远足设备)
2018/08/07 全球购物
门卫班长岗位职责
2013/12/15 职场文书
法人委托书范本
2014/09/15 职场文书
解除劳动关系协议书2篇
2014/11/28 职场文书
老干部座谈会主持词
2015/07/03 职场文书
2019年幼儿园管理条例范本!
2019/07/17 职场文书
2019年行政人事个人工作总结范本!
2019/07/19 职场文书
Go缓冲channel和非缓冲channel的区别说明
2021/04/25 Golang