2

我需要从字符串中解析数据,字符串看起来像:

id|0;f|Luke;l|skywalker;email|some@one.com;(ETC...)

我想把它转换成类似的东西:

$t = array(
 'id' => 0,
 'f' => 'Luke',
 'l' => 'Skywalker',
 'email' => 'some@one.com',
 //....
)

现在我知道我可以爆炸然后for循环然后再次爆炸但是有没有捷径呢?

就像 PHP 中的 1 行 1 函数一样可以做到这一点?

Tkx

4

1 回答 1

9

在大多数情况下,这个小片段应该处理它:

parse_str(strtr($data, '|;', '=&'), $t);

它将字符串变成看起来像的东西,application/x-www-form-urlencoded然后根据这些规则对其进行解析。

请注意,某些字符将获得不同的含义,例如%20将变成空格等。

于 2013-06-11T02:01:59.980 回答