Ошибка в строке № 11, т. Е.
return $n*fact($n-1);
факт метода не был вызван должным образом в этом. Вы должны использовать оператор $ this для вызова функции в этом классе любого метода.
Итак, вам просто нужно изменить это на $this->fact($n-1)
Для удобства ниже приведен полный пересмотренный код, посмотрите его.
<?php
//Enter your code here, enjoy!
class factorial{
public function fact($n){
if($n==1){
return 1;
}
else{
return $n*$this->fact($n-1);
}
}
}
$obj= new factorial();
$print=$obj->fact(3);
echo $print;
Код работающего здесь можно посмотреть по ссылке: http://sandbox.onlinephpfunctions.com/code/1c1131c1ade963048266a0e426e9357232aaddd5