Eu tento gerar números aleatórios (3 números) com o código php, mas quando tento devolver o valor não funciona

Aqui está o meu script php: Quando eu tento retornar o valor para $ total e a função echo generate_random_3 depois, em alguns casos ele não gera nenhum número, por favor ajude

<?php
    function generate_random_3(){

        for($x=0; $x<3; $x++){
            $random[] = rand(1, 9);
        }
        list($first, $second, $third) = $random;

        if($first!=$second AND $first!=$third AND $second!=$third AND $first!=0){
            $total = $first.$second.$third;
            return $total;
            }else{
            generate_random_3();
            }
    }
    echo generate_random_3();
?>

questionAnswers(2)

yourAnswerToTheQuestion