0

这是一个字符串..

$string = "foo1 : bar1, foo2: bar2, foo3: bar3"; 

,使用分隔符爆炸

$exploded = (",", $string);

现在$exploded数组包含:

foo1 : bar1
foo2 : bar2
foo3 : bar3

现在我需要foo1输入一个array['key']and bar1inarray['value']

如何做到这一点?

4

1 回答 1

3

您需要创建另一个循环来遍历"foo:bar"字符串数组并分解它们:

$exploded = explode(",", $input);  
$output = array();       //Array to put the results in
foreach($exploded as $item) {  //Go through "fooX : barX" pairs
  $item = explode(" : ", $item); //create ["fooX", "barX"]
  $output[$item[0]] = $item[1];  //$output["fooX"] = "barX";
}
print_R($output);

请注意,如果相同的键在输入字符串中出现多次 - 它们将相互覆盖,并且结果中仅存在最后一个值。

于 2013-04-14T09:50:09.053 回答