再帰関数は関数の中に自分自身を呼び出すことをいいます。
ただそのままだと無限に自分自身を呼び出し続けるため終了条件が必要になります。
if文の中で使うようにしましょう。
'''
function 関数名(引数) {
if (終了条件) {
return 戻り値;
} else {
関数名(引数);
return 戻り値;
}
}
'''
例 ランダムな数を変数で受け取り、返す関数。ランダムな数が負の場合はやり直しする。
'''
$num_1 = 0;
$num_2 = 0;
function randomTwoNumbers($num_1, $num_2){
$num_1 = mt_rand();
$num_2 = mt_rand();
global $subtrac;
$subtrac = $num_1 - $num_2;
if($subtrac >= 0 ){
return array($num_1, $num_2);
}else{
return randomTwoNumbers($num_1, $num_2);
}
}
'''