我在解析字符串时遇到了困难。这是我的结构:
"Title":"Avatar","Year":"2009","Rated":"PG-13","Released":"18 Dec 2009","Runtime":"2 h 42 min"
我想要做的是将每个结果放入一个自己的变量中,以便最终得到 $title、$year、$runtime 等。
我知道,有很多不同的 PHP 函数,但是在尝试了很多但没有得到我想要的结果之后,我只需要一些帮助。
您可以尝试以下方法:
<?php
$string = "Title":"Avatar","Year":"2009","Rated":"PG-13","Released":"18 Dec 2009","Runtime":"2 h 42 min"
$segments = explode(',', $string);
foreach($segments as $segment) {
list($key, $value) = explode(':', $segment);
echo $key, ' ', $value;
}
{
因为在对您的字符串进行一些修改后,您可以通过添加尾随和来使其成为 JSON 字符串}
。json_decode
并在修改后的字符串上调用函数:
$str = '"Title":"Avatar","Year":"2009","Rated":"PG-13","Released":"18 Dec 2009","Runtime":"2 h 42 min"';
$arr = json_decode("{{$str}}", true); // True to make it array, not object
// $arr contains parsed data
它有效,只需看看这个演示。您可以使用以下变量:
echo $arr["Title"];
但是如果你真的需要$title
(我不建议这样做)你可以使用extract
函数
extract($arr);
你可以像这样访问它:
echo $title;