wunderground API から潮汐データを取得しているときに、小さな問題が発生しました。以下のコードを使用して干潮の時刻を取得すると、ある日は正確な回答が得られますが、翌日は間違った回答が得られます。
<?
$json_url = 'http://api.wunderground.com/api/b2b4a1ad0a889006/tide/q/NJ/Wildwood.json';
// jSON String for request
$json_string = '[http://api.wunderground.com/api/b2b4a1ad0a889006/tide/q/NJ/Wildwood.json]';
// Initializing curl
$ch = curl_init( $json_url );
// Configuring curl options
$options = array(
CURLOPT_RETURNTRANSFER => true,
);
// Setting curl options
curl_setopt_array( $ch, $options );
// Getting results
$result = curl_exec($ch); // Getting jSON result string
$parsed_json = json_decode($result);
$parsed_data->stats; //this returns
$low_tide_time = $parsed_json->tide->tideSummary[8]->date->pretty;
echo $low_tide_time;
?>
この理由は明らかです。配列キー (この場合は [8]) は、毎日同じタイド データ タイプ (干潮) に一貫して割り当てられるわけではありません。したがって、今日 [8] は干潮の時間に関連付けられた配列キーかもしれませんが、明日 [8] は日の出、月の出などに割り当てられた配列キーになります。
for each ループを使用して干潮時間を取得する方法はありますか?
ありがとう!