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

5年以前  |  阅读数:1002 次  |  编程语言:PHP 

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分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例