Mailinglisten-Archive |
Sven Eichler schrieb:
>>> Namen: Alfons, Müller, Wehrt
>>> Das Menü wäre dann (eckige Klammern symbolisieren die anklickbaren
>>> Links):
>>> <A>BCDEFGHIJKL<M>NOPQRSTUV<W>XYZ
>>> An der ganzen Sache stört mich aber die Sache mit der if-Abfrage und
>>> daraus die Links zu erstellen. Das muss doch auch irgendwie einfacher
>>> gehen, weil das ist mir auf Dauer zu unwartbar.
>> Falls ich dich richtig verstanden habe, dann sieht du ein Problem
>> darin, für jeden Buchstaben des Alphabets eine eigene if-Abfrage
>> schreiben zu müssen?
>>
>> Etwas Code wäre hier hilfreich gewesen.
>
> Der bisherige Code besteht aus einer if-Zeile pro Buchstabe. Blanker Horror!
>
>> Baue ein Array aus den Letters deines Query-Results
>> $letters = array('a', 'm', 'w');
>>
>> $alphabet = 'abcdefghijklmnopqrstuvwxyz';
>> $menu = '';
>> for ( $i=0; $i<strlen($alphabet); $i++ ) {
>> $letter = substr($alphabet, $i, 1);
>> if ( in_array($letter, $letters) ) {
>> $menu .= '<a href="#a">'.strtoupper($letter).'</a>';
>> }
>> else {
>> $menu .= strtoupper($letter);
>> }
>> }
>
> Das sieht ersteinmal gut aus.
>
> $alphabet würd ich auch zu einem array machen. Dann würde für $letter ein
> $alphabet[$i] reichen (ohne substr).
> ... und dann würde die for-Schleife auch etwas anders ausfallen ... werd die
> Gendanken damit mal weiter verfolgen.
es ginge auch $alphabet{$i}, bei einem String
oder eben wie schon gesagt ord() und char(), dann brauchst $alphabet
überhaupt nicht
--
Sebastian Mendel
www.sebastianmendel.de
php::bar PHP Wiki - Listenarchive