Por que este código PHP não exibe as letras de A a Z?
Olá a todos! Sou novo em PHP e estou tentando exibir todas as letras do alfabeto inglês de A a Z usando um loop. Escrevi o seguinte código:
```php
```
Mas ele não exibe apenas A-Z, e sim uma sequência infinita: A B C D E F ... AA AB AC ... e assim por diante, até ocorrer um erro de tempo de execução. Por que isso acontece? Afinal, a condição diz claramente: $i <= 'Z'. Eu esperava que o loop parasse na letra Z. Mas ele continua funcionando. Expliquem, por favor, qual é o problema? Como organizar corretamente a iteração pelas letras de A a Z? Desde já, obrigado pela ajuda!
<<>>
Por que o loop não para em 'Z'?
O problema está em como o PHP lida com incrementos de strings. Quando você escreve $i++ para uma string, o PHP usa o incremento alfabético (perl-style), não o numérico. Isso significa que depois de 'Z' vem 'AA', depois de 'AZ' vem 'BA' e assim por diante. A condição $i <= 'Z' na comparação de strings funciona
No answers yet.
Faça login para deixar uma resposta