11.降水確率の表示の仕方


①5時発表の降水確率

朝6時から6時間ごとに分割されて、翌日の24時までのデータpopsが7個出力されています。


②11時発表の降水確率

昼12時から6時間ごとに分割されて、翌日の24時までのデータpopsが6個出力されています。


③17時発表の降水確率

18時から6時間ごとに分割されて、翌日の24時までのデータpopsが5個出力されています。


11-1.降水確率表示の処理プログラム

// 降水確率の読み込み
      $pops10 = $data2[0]['timeSeries'][1]['areas'][1]['pops'][0];
      $pops11 = $data2[0]['timeSeries'][1]['areas'][1]['pops'][1];
      $pops12 = $data2[0]['timeSeries'][1]['areas'][1]['pops'][2];
      $pops13 = $data2[0]['timeSeries'][1]['areas'][1]['pops'][3];
      $pops14 = $data2[0]['timeSeries'][1]['areas'][1]['pops'][4];

      // データの確認
      $pops15 = '';
      if(isset($data2[0]['timeSeries'][1]['areas'][1]['pops'][5])){
            $pops15 = $data2[0]['timeSeries'][1]['areas'][1]['pops'][5];
      }
      $pops16 = '';
      if(isset($data2[0]['timeSeries'][1]['areas'][1]['pops'][6])){
            $pops16 = $data2[0]['timeSeries'][1]['areas'][1]['pops'][6];
      }

// 5時発表の明日の降水確率表示
   if($pops16 !== ''){
      echo "降水確率</br>00-06時:$pops13%"; 
      echo "06-12時:$pops14%";   
      echo "12-18時:$pops15%";
      echo "18-24時:$pops16%";
   }
// 17時発表の明日の降水確率表示
   elseif(($pops15 === '') && ($pops16 === '')){
       echo "降水確率</br>00-06時:$pops11%"; 
       echo "06-12時:$pops12%";   
       echo "12-18時:$pops13%";
       echo "18-24時:$pops14%";
   }
// 11時発表の明日の降水確率表示
   elseif($pops16 === ''){
       echo "降水確率</br>00-06時:$pops12%"; 
       echo "06-12時:$pops13%";   
       echo "12-18時:$pops14%";
       echo "18-24時:$pops15%";
   }

①降水確率の読み込みで、発表時刻によってデータの無いpops[5]とpop[6]のデータの確認を行います。

 降水確率データが存在しない場合、$pops15は存在しないとエラーが出るので、対処法として空のデータを$pop15=’’;として入力します。

 $pop16も同様です。

②条件式について

 ⅰ)5時発表の条件式if($pops16 !== ”)は、7番目のデータpops[6]が空ではない場合となります。

 ⅱ)17時発表の条件式elseif(($pops15 === ”) && ($pops16 === ”))は、pops[5]とpops[6]が空の場合です。

   ===で、厳密比較しています。

 ⅲ)11時発表の条件式elseif($pops16 === ”)は、pops[6]が空の場合です。

   11時発表と17時発表の順序が入れ替わっていますが、11時発表を先に処理をすると、17時発表の場合も当てはまってしまうからです。


上記のプログラムは、明日の降水確率表示です。

今日の降水確率表示については、頑張って処理プログラムを考えてみてくださいね‼️

次は→12.雨雲レーダーの作り方

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA