PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [PHP] Buchstaben durch Zahlen anzeigen


Gast
2008-06-17, 15:30:09
(Nein, ein besserer Titel viel mir nicht ein :( sorry )


Hallo ihr,

ich schreibe gerade ein PHP-Script, welches automatisch eine HTML-Tabelle zu den EM-Tippergebnissen meiner Kumpels erzeugt. Das ganze ist mit vielen Schleifen realisiert, da dann die Tabelle dynamisch erzeugt wird, falls mal mehr Freunde mitspielen wollten etc...

Die Anzeige des Gruppenbuchstabens, also Gruppe "A", Gruppe "B" etc, soll auch automatisiert werden. Ich könnte natürlich ein Array mit numerischem Index erzeugen, welcher dem Schleifendurchlauf entsprechend den passenden Buchstaben für die Gruppe parat hat.

Allerdings kam mir da noch eine andere Idee. Ich kann das nicht genau beschreiben, weiß nichtmal wie das heißt was ich meine. Aber ich versuchs mal:
Also jeder Buchstabe wird doch durch eine Zahl codiert (Zeichensatz?!).
Angenommen, PHP hätte eine Funktion, welcher ich die Zahl übergebe, und diese mir dann den zugehörenden Buchstaben ausspuckt, dann könnte ich das so lösen:

(Angenommen, "A" sei jetzt mal die Zahl 55).

1. Schleifendurchlauf: functionXY(55); // Due Ausgabe wäre dann A
1. Schleifendurchlauf: functionXY(55+1); // Due Ausgabe wäre dann B
1. Schleifendurchlauf: functionXY(55+2); // Due Ausgabe wäre dann C
1. Schleifendurchlauf: functionXY(55+3); // Due Ausgabe wäre dann D

Und so weiter...

Was ich mir davon verspreche: Abgesehen davon, dass ich mir das Array spare, können beliebig viele Gruppen bis "Z" angesprochen werden, ohne dass ich viel code brauche. Das Array bräuchte von A bis Z ja 26 Einträge.


Jemand ne Idee? Danke

Gast
2008-06-17, 15:30:57
Diesen absolut peinlichen Schreibfehler oben könnt ihr übrigens behalten ;) sorry

The_Invisible
2008-06-17, 19:07:00
verstehe zwar nicht ganz was du willst aber versuchs mal.

was du mit zeichensatz meinst ist wohl ascii, da hättest du hier eine tabelle -> http://www.computerhope.com/jargon/a/ascii.htm

die dazugehörigen php funktionen:

chr() http://at.php.net/manual/en/function.chr.php
ord() http://at.php.net/manual/en/function.ord.php

hoffe du kannst damit was anfangen.

mfg

creave
2008-06-19, 19:39:41
Dafür brauchst du nur die Funktion chr() (wie the_Invisible treffend bemerkte) und das Wissen, dass das dezimale Steuerzeichen des Buchstabens "A" 65 beträgt.

Das ABC könntest du demnach einfach so ausgeben und hast damit deine Automatisierung, ohne manuell ein Array mit jedem einzelnen Buchstaben erstellen zu müssen:


<?

for($i=0;$i<26;$i++)
{
echo chr(65+$i);
}

?>

Gast
2008-06-20, 11:30:25
Cool, danke euch beiden, das funktioniert wie gewünscht! :)