PHP 数组和字符串互相转换实现方法

yipeiwu_com7年前PHP代码库

复制代码 代码如下:

$array=explode(separator,$string);
$string=implode(glue,$array);


使用和理解这两个函数的关键之处是分隔符(separator)和胶合符(glue)关系。当把一个数组转换成一个字符串时,将会设置胶合符——将被插入到生成字符串中的数组值之间的字符或代码。

相反,当把字符串转换成数组时,要指定分隔符,它用于标记什么应该变成独立数组元素。例如,以字符串开始:

  $s1='Mon-Tue-Wed-Thu-Fri';
  $days_array=explode('-',$s1);
  $days_array 变量现在是一个有5个元素的数组,其元素 Mon 的索引为0,Tue 的索引为1,等等。
  $s2=implode(',',$days_array);
  $s2
变量现在是一个用逗号分隔的一个星期中各天的列表:Mon,Tue,Wed,Thu,Fri

例子 1. explode() 示例

复制代码 代码如下:

<?php
// 示例 1
$pizza = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
echo $pieces[0]; // piece1
echo $pieces[1]; // piece2
// 示例 2
$data = "foo:*:1023:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // foo
echo $pass; // *
?>


例子 2. limit 参数示例

复制代码 代码如下:

<?php
$str = 'one|two|three|four';
// 正数的 limit
print_r(explode('|', $str, 2));
// 负数的 limit
print_r(explode('|', $str, -1));
?>

以上示例将输出:
Array
(
[0] => one
[1] => two|three|four
)
Array
(
[0] => one
[1] => two
[2] => three
)

注: 本函数可安全用于二进制对象。

相关文章

解析thinkphp import 文件内容变量失效的问题

解析thinkphp import 文件内容变量失效的问题

用TP 集成支付宝账户绑定功能时碰上个问题ORM 下有文件 config.class.php直接import()后 发现里面的变量无法使用  但确实是加载咯。。(在config...

PHP中for与foreach的区别分析

注意: 除非数组是被引用,foreach 所操作的是指定数组的一个拷贝,而不是该数组本身。因此数组指针不会被 each() 结构改变,对返回的数组单元的修改也不会影响原数组。 1. 自p...

PHP扩展程序实现守护进程

一般Server程序都是运行在系统后台,这与普通的交互式命令行程序有很大的区别。glibc里有一个函数daemon。调用此函数,就可使当前进程脱离终端变成一个守护进程,具体内容参见man...

PHP实现的二分查找算法实例分析

本文实例讲述了PHP实现的二分查找算法。分享给大家供大家参考,具体如下: 二分查找法需要数组是一个有序的数组 假设我们的数组是一个递增的数组,首先我们需要找到数组的中间位置. 一。要知道...

php实现将字符串按照指定距离进行分割的方法

本文实例讲述了php实现将字符串按照指定距离进行分割的方法。分享给大家供大家参考。具体如下: 将一个字符串每隔三个字符添加一个逗号,例如把字符串1234567890转换为1,234,56...