大漠驼铃

置身浩瀚的沙漠,方向最为重要,希望此blog能向大漠驼铃一样,给我方向和指引。
Java,Php,Shell,Python,服务器运维,大数据,SEO, 网站开发、运维,云服务技术支持,IM服务供应商, FreeSwitch搭建,技术支持等. 技术讨论QQ群:428622099
随笔 - 238, 文章 - 3, 评论 - 117, 引用 - 0
数据加载中……

PHP把数组转成字符串,PHP字符串转成数组

经常会用到数组和字符串的转换,例如下面的一个数组:
<?php
$userid=array(1,2,3,4,5);
转换方式一:
<?php
$str='';
foreach($userid as $id){
   $str=$id.$str;
}
$string=rtrim($str);
echo $string;

?>
转换方式二:
<?
$string2 = implode(" ", $array);
?>

字符串转成数组:
转换方式一:
$pizza  = "piece1 piece2 piece3 piece4 piece5 piece6";
$pieces = explode(" ", $pizza);
转换方式二:
<?php
// 分隔符可以是斜线,点,或横线
$date = "04/30/1973";
list($month$day$year) = split ('[/.-]', $date);
echo "Month: $month; Day: $day; Year: $year<br /> ";
?>
转换方式三:
preg_split — 通过一个正则表达式分隔字符串
array preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )
通过一个正则表达式分隔给定字符串.
pattern:用于搜索的模式, 字符串形式.
subject:输入字符串
limit:如果指定, 将限制分隔得到的子串最多只有limit个, 返回的最后一个 子串将包含所有剩余部分.limit值为-1, 0或null时都代表"不限制", 作为php的标准, 你可以使用null跳过对flags的设置.
flags:flags可以是任何下面标记的组合(以位或运算|组合):
PREG_SPLIT_NO_EMPTY:如果这个标记被设置, preg_split()将进返回分隔后的非空部分.
PREG_SPLIT_DELIM_CAPTURE:如果这个标记设置了, 用于分隔的模式中的括号表达式将被捕获并返回.
PREG_SPLIT_OFFSET_CAPTURE:如果这个标记被设置, 对于每一个出现的匹配返回时将会附加字符串偏移量. 注意: 这将会改变返回数组中的每一个元素, 使其每个元素成为一个由第0 个元素为分隔后的子串, 第1个元素为该子串在subject 中的偏移量组成的数组.
<?php
//使用逗号或空格(包含" ",  ,     ,  , f)分隔短语
$keywords = preg_split("/[s,]+/", "hypertext language, programming");
?>
使用偏移量:
<?php
$str = 'hypertext language programming';
$chars = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE);
print_r($chars);
?>
输出:
Array
(
    [0] => Array
        (
            [0] => hypertext
            [1] => 0
        )

    [1] => Array
        (
            [0] => language
            [1] => 10
        )

    [2] => Array
        (
            [0] => programming
            [1] => 19
        )

)

posted on 2015-01-28 14:29 草原上的骆驼 阅读(4546) 评论(1)  编辑  收藏 所属分类: PHP

评论

# re: PHP把数组转成字符串,PHP字符串转成数组  回复  更多评论   

https://github.com/eixom/php-jsonlite
2015-01-28 15:46 | github

只有注册用户登录后才能发表评论。


网站导航: