PHP - 如何在键/值对中拆分字符串?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (41)

我有这样一个字符串:

key = value,key2 = value2

我想解析成这样的东西:

array(
  "key" => "value",
  "key2" => "value2"
)

我可以做类似的事情 :

$parts = explode(",", $string)
$parts = array_map("trim", $parts);
foreach($parts as $currentPart)
{
    list($key, $value) = explode("=", $currentPart);
    $keyValues[$key] = $value;
}

必须有一些方法可以更好地利用PHP来做到这一点吗?

提问于
用户回答回答于

如果你不介意使用正则表达式:

$str = "key=value, key2=value2";
preg_match_all("/([^,= ]+)=([^,= ]+)/", $str, $r); 
$result = array_combine($r[1], $r[2]);
var_dump($result);
用户回答回答于
<?php parse_str(str_replace(", ", "&", "key=value, key2=value2"), $array); ?>

扫码关注云+社区

领取腾讯云代金券