Пример рекурсивной функции в PHP
Рекурсия - это вызов функции внутри самой себя. Чтобы избавиться от бесполезного и бесконечного вызова функции самой себя, необходимо прописать условие при котором эта функция останавливалась - переставала себя вызывать.
function recurs($n)
{
if ($n>=1)
{
echo($n!=1)?"$n + ":"$n = ";
return $n+recurs($n-1);//здесь происходит повторный вызов функции
}
}
echo recurs(5);//5 + 4 + 3 + 2 + 1 = 15
Вычисляем Факториал (произведение натуральных чисел от 1 до самого числа)
function factorial($n)
{
if ($n <= 1) return 1;
echo($n!=1)?"$n * ":"$n = ";
return $n * factorial($n - 1);//здесь происходит повторный вызов функции
}
echo factorial(5);//5 * 4 * 3 * 2 * 120

