我的数据库值为JSON。我希望将值分配给键,例如" name"。我怎样才能用PHP获得这些?
<?php
include('db.class.php');
$sql = "select * from users where 1";
$obj = new db();
$stmt = $obj->conn->prepare($sql);
$stmt->execute();
$res = $stmt->fetchAll(PDO::FETCH_ASSOC);
$json = json_encode($res,true);
echo $big = $json->name; // ??? ERROR
我的输出是
[
{"id":"1",
"name":"test1",
"username":"abc",
"email":"c@c.com",
"phone":"333"
},
{"id":"2",
"name":"test2",
"username":"def",
"email":"a@a.com",
"phone":"23232"}
]
答案 0 :(得分:2)
您无需使用{
"rootname" : {
"key1" : [ "lbl1", "lbl2" ],
"key2" : 10,
"key4" : "hello"
}
}
。 json_encode()
是结果数组,您可以从中访问名称。
$res
请注意,echo $res[0]['name'];
的元素是关联数组,而不是对象,因为您使用$res
。
答案 1 :(得分:0)
首先解码jason数组,然后获取结果
$data= json_decode($json);
echo $data[0]->name;
如果您需要有关jason_decode的更多信息,请阅读manual