php string2array,PHP中格式字符串与数组相互转换

PHP中,将 xxx,xxx,xxx或sss.sss.sss等等相同类型的字符串处理成数组,或者反过来,将数组转换成字符串,在PHP中是有对应的函数来处理的。并不需要自己写一个方法来处理。

数组 → 字符串:implode()<?php

$arr = array('Hello','World!','Beautiful','Day!');

echo implode(" ",$arr);

?>

定义和用法

implode() 函数返回一个由数组元素组合成的字符串。

注释:implode() 函数接受两种参数顺序。但是由于历史原因,explode() 是不行的,您必须保证 separator 参数在 string 参数之前才行。

注释:implode() 函数的 separator 参数是可选的。但是为了向后兼容,推荐您使用使用两个参数。

注释:该函数是二进制安全的。

语法

implode(separator,array)separator

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

array

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

例子 :

用不同的字符分隔数组元素:<?php

$arr = array('Hello','World!','I','love','Shanghai!');

echo implode(" ",$arr)."
";

echo implode("+",$arr)."
"; // Hello+World+I+love+Shanghai

echo implode("-",$arr)."
";// xxx-xxx-xx

echo implode("X",$arr);

?>

字符串 → 数组: explode()

定义和用法

explode() 函数把字符串打散为数组。

注释:"separator" 参数不能是空字符串。

注释:该函数是二进制安全的。

语法

explode(separator,string,limit)separator

必需。规定在哪里分割字符串。

string

必需。要分割的字符串。

limit

可选。规定所返回的数组元素的数目。

可能的值:大于 0 - 返回包含最多 limit 个元素的数组

小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组

0 - 返回包含一个元素的数组

实例

把字符串打散为数组:// 例一:

$str = "Hello world. I love Shanghai!";

print_r (explode(" ",$str));

?>

// 例二:

$str = 'one,two,three';

$arr = explode(',', $str);

print_r($arr);

//Array ( [0] => one [1] => two [2] => three )

延伸:截取数组中某一段的值 array_slice()

定义和用法

array_slice() 函数在数组中根据条件取出一段值,并返回。

注释:如果数组有字符串键,所返回的数组将保留键名。(参见例子 4)

语法

array_slice(array,start,length,preserve)array

必需。规定数组。

start

必需。数值。规定取出元素的开始位置。 0 = 第一个元素。

如果该值设置为正数,则从前往后开始取。

如果该值设置为负数,则从后向前取 start 绝对值。 -2 意味着从数组的倒数第二个元素开始。

length

可选。数值。规定被返回数组的长度。

如果该值设置为整数,则返回该数量的元素。

如果该值设置为负数,则函数将在举例数组末端这么远的地方终止取出。

如果该值未设置,则返回从 start 参数设置的位置开始直到数组末端的所有元素。

preserve

可选。规定函数是保留键名还是重置键名。可能的值:true - 保留键名

false - 默认。重置键名

例子 1

从数组的第二个元素开始取出,并仅返回两个元素:<?php

$a=array("red","green","blue","yellow","brown");

print_r(array_slice($a,1,2));

?>

例子 2

使用负的 start 参数:<?php

$a=array("red","green","blue","yellow","brown");

print_r(array_slice($a,-2,1));

?>

例子 3

把 preserve 参数设置为 true:<?php

$a=array("red","green","blue","yellow","brown");

print_r(array_slice($a,1,2,true));

?>

例子 4

处理字符串键名和整数键名:<?php

$a=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow","e"=>"brown");

print_r(array_slice($a,1,2));

$a=array("0"=>"red","1"=>"green","2"=>"blue","3"=>"yellow","4"=>"brown");

print_r(array_slice($a,1,2));

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值