floatの自動変換の警告対応
「Deprecated: Implicit conversion from float 269.6461271075689 to int loses precision in ・・・」の形式の警告の対応の為に「(int)」による型キャストで対応しました。
以下のコードは、方角の0-360℃を「NEWS」の組み合わせの表示に変換するような内容でのサンプルです。
// ------------------------------------------------------------------------- // 0-360℃をNEWSの組み合わせの文字に変換 // ------------------------------------------------------------------------- // 2024-10-02 PHP8.1での警告表示に対応 // 警告表示の例) // Deprecated: Implicit conversion from float 315.45 to int loses precision in ・・・ function WindDirConv2NEWS($d) { // 0 1 2 3 4 5 5 7 $news = array("N","NNE","NE","ENE","E","ESE","SE","SSE" // 8 9 10 11 12 13 14 15 ,"S","SSW","SW","WSW","W","WNW","NW","NNW"); # vvvvv del 2024-10-02 vvvvv #$idx = (($d-360/32) + 360 / 16) % 360 / (360/16); #return $news[floor($idx)]; # ^^^^^ del 2024-10-02 ^^^^^ # vvvvv add 2024-10-02 vvvvv $idx = (int)(($d-360/32) + 360 / 16) % 360 / (360/16); return $news[(int)$idx]; # ^^^^^ add 2024-10-02 ^^^^^ }