$array = array("Real" => array("Alonso","Zidan"),"Inter" => "Zanetti", "Roma" => "Toti");
$json=json_encode($array);
echo $json
通过这种方式我正在读取所有数据,但我怎样才能读取数据
只有Real
或Inter
?
例如,如果是json_decoded,我可以这样做:
Inter
:
echo $array['Inter'];
Real
:
foreach($array["Real"] as $real){
echo $real."<br>";
}
我如何对json_encode()
执行相同操作?
答案 0 :(得分:2)
json_encode()
返回一个字符串,因此在不解析字符串的情况下无法访问其部分。但你可以改为:
echo json_encode($array['Inter']);
答案 1 :(得分:0)
据我了解你的问题,你需要输出json`d对象。
<强>输入强>
$input = '{"Real":["Alonso","Zidan"],"Inter":"Zanetti","Roma":"Toti"}';
在php中:
// Second true is for array return, not object)
$string = json_decode($input, true)
echo $string['Inter'];
在Javascript中(jQuery):
var obj = jQuery.parseJSON(input);
if (obj != undefined) {
echo obj['Inter'];
}
<强> UPD:强>
如果你需要在所有阵列中获得一个json,你需要遵循:
$array = array("Real" => array("Alonso","Zidan"),"Inter" => "Zanetti", "Roma" => "Toti");
foreach($array as $key => $value) {
$array[$key] = json_encode($value);
}
在此代码之后,数组中的所有变量都将为json,并且您可以随时回显它们