Oii, Eliel! Tudo bem por aí?
Parabéns pela dedicação e por compartilhar a sua solução com a comunidade da Alura! O seu código ficou muito bem estruturado e atende perfeitamente aos requisitos do projeto proposto no curso de PHP.
Queria destacar alguns pontos bacanas do que você fez:
- Uso do
trim(): Foi uma excelente sacada adicionar o trim() junto com o (float) na leitura do valor do saque e do depósito. Isso evita problemas chatos com a quebra de linha gerada pelo fgets(STDIN). - Validação de saldo: A verificação para impedir que o usuário saque mais do que possui na conta garante que a lógica de negócio funcione corretamente.
- Organização das opções: O menu ficou claro e a utilização do
switch organizou muito bem o fluxo de cada operação.
Como ponto de melhoria para futuras versões do seu projeto, você pode observar que, no bloco switch, utilizar case $validador == 1: acaba comparando um booleano com o valor digitado. Em PHP, como o switch faz uma comparação padrão, o código funciona, mas o ideal seria usar diretamente case 1: ou até mesmo a estrutura match que veio nas versões mais recentes do PHP para deixar tudo ainda mais limpo.
Para continuarmos trocando ideias sobre essa implementação: Você já pensou em como adaptar essa lógica para lidar com múltiplas contas ao mesmo tempo, utilizando arrays ou orientação a objetos?
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!