我正在尝试从php中的json字符串中读取某些值,我能够只使用一个值(例如
)来创建一个简单的json字符串$json = '{"value":"somevalue"}';
使用此:
<?php
$json = '{"value":"somevalue"}';
$obj = json_decode(json_encode($json));
print $obj->{'value'};
?>
但是当我尝试从以下json字符串中获取值时,它会抛出错误...
$json = '{"field": "title","rule": {"required": "true","minlength": "4","maxlength": "150" }}';
我在JSONlint上验证了json,但不确定如何使用php访问其中的值。
答案 0 :(得分:3)
你可以试试这个:
$json = '{"field": "title","rule": {"required": "true","minlength": "4","maxlength": "150" }}';
//since $json is a valid json format you needn't encode and decode it again
$obj = json_decode($json);
print_r($obj->filed);
print_r($obj->rule);
答案 1 :(得分:0)
您可以将true
作为第二个参数传递给json_decode()
,以便将结果作为数组
$my_arr = json_decode($json, true);
var_dump($my_arr);
应该帮助你。然后,您可以像平常一样逐步浏览数组。
答案 2 :(得分:0)
使用var_dump
打印出包含所有成员和层次结构的对象。那么你应该能够找到你想要的价值