2017-02-19 21 views
0

我目前正在嘗試從JSON文件讀取座標並將它們保存到數組中以供進一步使用。但是我不管理成功讀取文件。我的JSON文件的格式如下(我只關心CX和CY):將JSON文件解析爲PHP中的數組

{ 
    "cX": [ 
     246, 
     1253, 
     1464, 
     1183 
    ], 
    "cY": [ 
     223, 
     138, 
     383, 
     114 
    ], 
    "scroll": [ 
     0, 
     90, 
     0, 
     0 
    ], 
    "sessionID": [ 
     "f06807c10fb31d5530ad8c4236b94ee2", 
     "f06807c10fb31d5530ad8c4236b94ee2", 
     "f06807c10fb31d5530ad8c4236b94ee2", 
     "f06807c10fb31d5530ad8c4236b94ee2" 
    ], 
    "Time": [ 
     "11:30:01", 
     "11:30:02", 
     "11:30:03", 
     "11:30:03" 
    ], 
    "elem": [ 
     "H1", 
     "H1", 
     "H1", 
     "BODY" 
    ] 
} 

我嘗試使用下面的PHP代碼:

<?php 
    $string = file_get_contents("./PHP/JSON/clicks.json"); 
    $json_a = json_decode($string, true); 
    for($idx = 0; $idx < count($json_a); $idx++){ 
    $obj = (Array)$json_a[$idx]; 
    echo $obj["cX"]; 
?> 
+0

實際的問題是什麼? – mithrop

回答

2
<?php 
    $string = file_get_contents("./PHP/JSON/clicks.json"); 
    $json_a = json_decode($string, true); 
    $cx= $json_a->cX; 
    $cy=$json_a->cY; 

?> 

我希望這會幫助你

+1

'json_decode()'中不需要'true',因爲它會將對象轉換爲數組。 – gaurav

0

看起來像是在試圖遍歷一個對象而不是一個數組。如果你在json周圍放上方括號,你的腳本應該工作。否則讀取cX和cY屬性而不重複遍歷對象

$obj = $json_a["cX"];