Hallo und guten Morgen,
Ich bin ja für Codeklarheit:
foreach (range("A", "Z") as $letter) { echo $letter; }
Hat den Vorteil, dass man klar erkennt, von wo bis wo das geht - und erlaubt die Frage, was mit Umlauten sein soll... die würde man nämlich relativ leicht noch in das zu durchlaufende Array der Buchstaben hinzufügen können - was bei deiner ASCII-Code-Zählerei nicht ganz so simpel sein dürfte.
Sollte man zum "Einfügen von Umlauten" wegen der KLARHEIT nicht besser den Normalizer http://php.net/manual/en/class.normalizer.php bemühen? Schließlich müssen wir doch davon ausgehen, dass es sich bei der Codierung nicht um eine Single-Byte-Codierung, sondern eher wahrscheinlich um UTF-8 (oder datenbankintern um "MySQL-Unicode") handelt.
Die Funktion range() , die PHP hier bietet, sieht aber eher nach einer ASCII-basierten Funktion aus.
Wie es aber mit der Ordinalität der weiteren den Grundzeichen A-Z (ASCII) zuzuordenden Zeichen aussieht, vermag ich nicht zu sagen...
Grüße
TS