1) Ao invés de deixar dar uma exceção o certo não seria validar para que a pessoa não inserisse um número menor ou igual a 0? Não entendi quando tratar com exceção e quando validar. Porque imagine que eu fosse gerar uma exceção para cada código meu:
Nome não pode ser vazio, ai gera uma exceção.
Cpf não pode ser vazio ai gera uma exceção.Entende? Pra mim acho mais fácil validar antes.
2) Quando fizemos:
catch(RuntimeException | DivisionByZeroError $problema){
        echo $problema->getMessage() . PHP_EOL;
        echo "Erro" . PHP_EOL;
    }A mensagem venho o padrão em inglês. Tem como mudar para português?
 
            