2016-05-26 9 views
-1

から私は、PHPに初心者です、ここで は私のJSONファイルで、抽出JSONデータPHPのログファイル

{"hint_data":{"locations":["AXQDAP____8AAAAABwAAABEAAAAYAAAAIwIAAERwAgAAAAAADgyCAef7TAMCAAEB","bOsDAP____8AAAAAAwAAAAcAAADFAQAAFAAAAEJwAgAAAAAANQeCAdzdTAMFAAEB"],"checksum":326195011},"route_name":["",""],"via_indices":[0,15],"via_points":[[25.299982,55.376873],[25.29874,55.369179]],"found_alternative":false,"route_summary":{"end_point":"","start_point":"","total_time":101,"total_distance":871},"route_geometry":"{[email protected]}|rhBpBaBvHuC`EuArEUtEtAlDvEnD`[email protected]@[email protected]","status_message":"Found route between points","status":0} 

私は、JSONからTOTAL_TIMEを抽出し、CSVファイルにそれを印刷する必要があり、誰かが私を助けてくれますか?

+0

を 'json_decode'とのforeachループ –

+0

を使用して、あなたは完全なコードを書いてくださいもらえますか?どうもありがとうございます。 –

答えて

2

json_decodeを使用すると、jsonからの合計時間を取得できます。

を使用すると、連想配列を取得でき、以下のように合計時間の値にアクセスできるインデックスを使用できます。

Check online

$json = '{"hint_data":{"locations":["AXQDAP____8AAAAABwAAABEAAAAYAAAAIwIAAERwAgAAAAAADgyCAef7TAMCAAEB","bOsDAP____8AAAAAAwAAAAcAAADFAQAAFAAAAEJwAgAAAAAANQeCAdzdTAMFAAEB"],"checksum":326195011},"route_name":["",""],"via_indices":[0,15],"via_points":[[25.299982,55.376873],[25.29874,55.369179]],"found_alternative":false,"route_summary":{"end_point":"","start_point":"","total_time":101,"total_distance":871},"route_geometry":"{[email protected]}|rhBpBaBvHuC`EuArEUtEtAlDvEnD`[email protected]@[email protected]","status_message":"Found route between points","status":0}'; 
$assoc = true; 
$result = json_decode ($json, $assoc); 

echo $result['route_summary']['total_time']; //101 
+0

ありがとうfrayne私はそれをcheeckします。 900個のjsonデータがある場合は、ファイルに保存してそのファイルを解析する必要がありますか? –

+0

ここで確認してください:https://3v4l.org/qiFnq –

+0

あなたは 'json_decode'から得られる配列を追跡する必要があります。もしあなたがそれを見ることができれば、あなたのような混乱はないと思います。 –

0

まず、あなたは戻ってPHPオブジェクトにJSONデータをデコードします。以下に示すようにその後、あなたは、オブジェクトの合計時間プロパティにアクセスすることができます。

<?php 
     $json  = '{"hint_data":{"locations":["AXQDAP____8AAAAABwAAABEAAAAYAAAAIwIAAERwAgAAAAAADgyCAef7TAMCAAEB","bOsDAP____8AAAAAAwAAAAcAAADFAQAAFAAAAEJwAgAAAAAANQeCAdzdTAMFAAEB"],"checksum":326195011},"route_name":["",""],"via_indices":[0,15],"via_points":[[25.299982,55.376873],[25.29874,55.369179]],"found_alternative":false,"route_summary":{"end_point":"","start_point":"","total_time":101,"total_distance":871},"route_geometry":"{[email protected]}|rhBpBaBvHuC`EuArEUtEtAlDvEnD`[email protected]@[email protected]","status_message":"Found route between points","status":0}'; 
     $data  = json_decode($json); 
     $totalTime = $data->route_summary->total_time; 
     var_dump($totalTime); // DUMPS  101