phpbar.de logo

Mailinglisten-Archive

[php] alphabetisches Menü (ABC...) erstellen

[php] alphabetisches Menü (ABC...) erstellen

Sven Eichler phpbar at koalashome.de
Mit Sep 20 21:39:13 CEST 2006


> > 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.

Mal schaun was ich aus den bisherigen Vorschlägen stricken kann.

Danke schon mal.

-- 
Sven

php::bar PHP Wiki   -   Listenarchive