如下这段字符串: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);也可以用正则
$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);
$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; }
<?php$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);
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号