PHP头条
热点:

php字符串转化成数组解决思路


php字符串转化成数组
如下这段字符串:sex-1-area-2-pagesize-18-pageindex-1  转化成数组

[sex] => 1 [area] => 2 [pagesize] => 18 [pageinde] => 1

我用explode,只能 [0] => sex [1] => 1 [2] => area [3] => 2 这样的

上面的字符串是一个URL传递的参数 分享到:
------解决方案--------------------
$s = 'sex-1-area-2-pagesize-18-pageindex-1';
foreach(array_chunk(explode('-', $s), 2) as $v) {
  $r[$v[0]] = $v[1];
}
print_r($r);
Array
(
    [sex] => 1
    [area] => 2
    [pagesize] => 18
    [pageindex] => 1
)

------解决方案--------------------
也可以用正则
$s = 'sex-1-area-2-pagesize-18-pageindex-1';
preg_match_all('/(\w+)\-(\w+)/', $s, $r);
$r = array_combine($r[1], $r[2]);
print_r($r);
Array
(
    [sex] => 1
    [area] => 2
    [pagesize] => 18
    [pageindex] => 1
)

------解决方案--------------------
$test = "sex-1-area-2-pagesize-18-pageindex-1";
$preg = "/(?<=\d)-(?=[a-z])/";
$res = preg_split($preg,$test);

foreach($res as $tmp){
list($key,$value) = explode("-",$tmp);
echo $key."=>".$value;
}

------解决方案--------------------

$str = 'sex-1-area-2-pagesize-18-pageindex-1';
$str = explode('-', $str);
for($i=0,$max=count($str);$i<$max;$i++) {
$result[$str[$i]] = $str[++$i];
}
print_r($result);

www.phpzy.comtrue/phprm/8400.htmlTechArticlephp字符串转化成数组解决思路 php字符串转化成数组 如下这段字符串:sex-1-area-2-pagesize-18-pageindex-1转化成数组 [sex]=>1[area]=>2[pagesize]=>18[pageinde]=>1 我用explode,只能[0]=>sex[1]=>1[2]=>area[3]=>2这...

相关文章

相关频道:

PHP之友评论

今天推荐