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

 更新时间:2015年11月05日 10:39:18   投稿:mrr  
这篇文章主要介绍了PHP explode()函数的几个应用和implode()函数有什么区别,需要的朋友可以参考下

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 中 config.m4 的探索

    有关PHP 中 config.m4 的探索

    这篇文章主要介绍了PHP 中 config.m4 的探索,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • PHP array_key_exists检查键名或索引是否存在于数组中的实现方法

    PHP array_key_exists检查键名或索引是否存在于数组中的实现方法

    下面小编就为大家带来一篇PHP array_key_exists检查键名或索引是否存在于数组中的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • php生成PDF格式文件并且加密

    php生成PDF格式文件并且加密

    本文给大家介绍的是如何使用php生成pdf文件,并且把该文件加密或设置访问密码的方法,有需要的小伙伴可以参考下。
    2015-06-06
  • Smarty模板配置实例简析

    Smarty模板配置实例简析

    这篇文章主要介绍了Smarty模板配置,结合实例形式简单分析了Smarty模板的功能、基本配置方法与相关操作注意事项,需要的朋友可以参考下
    2019-07-07
  • Zend Framework教程之Zend_Controller_Plugin插件用法详解

    Zend Framework教程之Zend_Controller_Plugin插件用法详解

    这篇文章主要介绍了Zend Framework教程之Zend_Controller_Plugin插件用法,结合实例形式详细分析了Zend_Controller_Plugin插件的原理,使用方法与相关注意事项,需要的朋友可以参考下
    2016-03-03
  • PHP+jQuery 注册模块的改进(一):验证码存入SESSION

    PHP+jQuery 注册模块的改进(一):验证码存入SESSION

    本文主要是对上一篇文章模进行改进,把验证码写入SESSION而不是把验证码的文字返回客户端的隐藏域,否则验证码的意义就不复存在啦
    2014-10-10
  • Laravel中获取路由参数Route Parameters的五种方法示例

    Laravel中获取路由参数Route Parameters的五种方法示例

    这篇文章主要给大家介绍了关于Laravel中获取路由参数Route Parameters的五种方法,文中通过示例代码介绍的非常详细,对大家学习或者使用Laravel具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-09-09
  • ThinkPHP之getField详解

    ThinkPHP之getField详解

    这篇文章主要介绍了ThinkPHP的getField方法,需要的朋友可以参考下
    2014-06-06
  • PHP+Ajax无刷新带进度条图片上传示例

    PHP+Ajax无刷新带进度条图片上传示例

    本篇文章主要介绍了PHP+Ajax无刷新带进度条图片上传示例,详细的整理PHP无刷新上传图片,并且要带进度条的代码,有需要的可以了解一下。
    2017-02-02
  • php获取汉字首字母的函数

    php获取汉字首字母的函数

    本文介绍用php实现汉字转化为首字母的方法,主要功能是:功能明确,易于修改维护和扩展; 英文的字串:不变返回(包括数字);中文字符串:返回拼音首字符; 中英混合串: 返回拼音首字符和英文
    2013-11-11

最新评论