将键值JSON转换为对象并直接引用单个值

时间:2014-03-26 13:54:06

标签: php json

我正在制作一个网络应用。在其中的一部分,我有JS发送一个字符串(以json格式)到PHP。

php收到的值是:

{"date":"24-03-2014","Cars":["Cheap","Expensive"]}

现在,它保存在变量$meta中。我面临的问题是,如何将此字符串转换为对象并分别引用每个单独的条目。

我尝试了json_decodejson_encode

然后我使用$meta.["date"]$meta.date引用了每个变量,但没有任何接缝可以工作。我只得{作为输出。

这样做的正确方法是什么?

3 个答案:

答案 0 :(得分:0)

$str = '{"date":"24-03-2014","Cars":["Cheap","Expensive"]}';
$obj = json_decode($str);

echo $obj->date;
// 24-03-2014

答案 1 :(得分:0)

通常$my_obj = json_decode($_POST['jsonstring'], 1);(真正的供应意味着它将作为一个辅助数组返回)应该是要走的路。如果我是你,我可能会尝试var_dump($my_obj);来看看实际发生了什么。如果它不起作用,您需要确保正确提交有效的json字符串,例如JSON.stringify();

答案 2 :(得分:0)

您应该查看json_decode here

的PHP文档页面

默认情况下,除非您将true作为json_decode的第二个参数传递,否则函数调用将返回一个对象,您可以使用以下命令访问该成员:

$meta->date

箭头操作符允许您访问对象值,而不是方括号或点。