首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >PHP -以键/值对形式拆分字符串

PHP -以键/值对形式拆分字符串
EN

Stack Overflow用户
提问于 2011-02-08 00:51:48
回答 5查看 18.6K关注 0票数 21

我有一个这样的字符串:

key=value,key2=value2

我想把它解析成这样:

代码语言:javascript
复制
array(
  "key" => "value",
  "key2" => "value2"
)

我可以做类似这样的事情

代码语言:javascript
复制
$parts = explode(",", $string)
$parts = array_map("trim", $parts);
foreach($parts as $currentPart)
{
    list($key, $value) = explode("=", $currentPart);
    $keyValues[$key] = $value;
}

但这似乎很离奇。用PHP一定有更聪明的方法来做这件事,对吧?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-02-08 00:56:41

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

代码语言:javascript
复制
$str = "key=value, key2=value2";
preg_match_all("/([^,= ]+)=([^,= ]+)/", $str, $r); 
$result = array_combine($r[1], $r[2]);
var_dump($result);
票数 22
EN

Stack Overflow用户

发布于 2011-02-08 00:57:59

代码语言:javascript
复制
<?php parse_str(str_replace(", ", "&", "key=value, key2=value2"), $array); ?>
票数 14
EN

Stack Overflow用户

发布于 2011-02-08 00:55:56

如果将字符串更改为使用&而不是,作为分隔符,则可以使用parse_str()

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4923951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档