Recursividade PHP

Este é um snippet de código simples para calcular o fatorial recursivamente usando PHP:

class Factorial {
protected $number;

public function __construct($number){
$this
->number = $number;
}

public function getFactorial()
{
if ($this->number < 2){
return 1;
}

else {
return $this->number * ($this->getFactorial($this->number -=1));
}
}

}

$factorial
= new Factorial(4);
echo $factorial
->getfactorial();

Você pode envolver sua lógica dentro de um bloco try catch para garantir que o número inserido seja realmente um inteiro.