我有一个这样的字符串:
$str = '35-3|24-6|72-1|16-5';
我想生成一个数组:
$arr = array (
35 => 3,
24 => 6,
72 => 1,
16 => 5
);
什么是最好最简单的方法?
答案 0 :(得分:10)
您可以尝试以下
$str = '35-3|24-6|72-1|16-5';
$data = explode("|",$str);
$arr = array();
foreach($data as $value){
$part = explode('-',$value);
$arr[$part[0]]=$part[1];
}
var_dump($arr);
答案 1 :(得分:3)
尝试
if (preg_match_all('/(\d+)\-(\d*)/', $str, $matches)) {
$arr = array_combine($matches[1], $matches[2]);
}