プログラムを作っていると、条件によって呼び出す関数を使い分けたいシーンは多いでしょう。
下のような条件式によって呼び出す関数を分けることができます。(3種類の関数を使い分けています)。
この可変関数を使うと「$func = "keisan_".$suji」のように()をつけると、その変数の値と同名の関数が実行されるのです。少し上級の技になりますが、覚えておくと重宝します。
<?php header("Content-type: text/html; charset=utf-8"); $suji = "1"; switch($suji){ case "1": $value = keisan_1(); break; case "2": $value = keisan_2(); break; case "3": $value = keisan_3(); break; } function keisan_1(){ echo "1"; } function keisan_2(){ echo "2"; } function keisan_3(){ echo "3"; } ?>
<?php header("Content-type: text/html; charset=utf-8"); $suji = "1"; $func = "keisan_" . $suji; $value = $func(); function keisan_1(){ echo "1"; } function keisan_2(){ echo "2"; } function keisan_3(){ echo "3"; } ?>