初級・中級者向け~ウェブ制作備忘録
占いのブログパーツを作りたいと思い、入力値(数字)によって特定の結果を表示したい場面がありました。「おみくじ」でありませんので、その都度結果が変わるランダムに表示させるものではありません。あくまでも、入力値によって決まった結果を表示させるというものです。
function sumDigits($num) { // 数字を1桁ずつ分割 $digits = str_split($num); // 各桁の値を合算 $sum = array_sum($digits); // 合算結果が1桁になるまで繰り返す while ($sum > 9) { $digits = str_split($sum); $sum = array_sum($digits); } return $sum; } // 使用例 $num = 12345; $result = sumDigits($num); echo '結果:' .$result; // 6
使用例では、変数 $num に「12345」という数字を設定しています。sumDigits関数にこの数字を渡し、結果を $result に代入しています。
最後に、$result を表示することで、最終結果である6(1+2+3+4+5=15 → 1+5=6)が表示されます。
変数 $num には、数字(整数)を指定していますが、数字(整数)意外の文字列の場合は、$num に入った値を、sumDigits関数の冒頭で、数字(整数)に変換してやればOKです。
別途、結果データの変数リスト(1~9の9つのパターン)を用意しておいて、最終結果の数値に該当するデータを表示させれば、なんちゃって占いの完成です。
PHP | |
2023.02.18 09:55 | |
2023.02.18 10:00 |