edocom 10 Geschrieben 4. Februar 2009 Melden Teilen Geschrieben 4. Februar 2009 Hallo Leute Ich habe hier folgendes Script: for ($i=0; $i<$anzahl; $i++) { echo '<tr>'; echo '<td width=150>' . $ergebnis[$i]['displayname'] . '</td>'; if (empty($ergebnis[$i]['department'])) echo '<td width=150> </td>'; else /*Breite vom Feld*/ echo '<td width=150>' . $ergebnis[$i]['department'] . '</td>'; '</tr>' dann lasse ich mir die das ergebnis mit einem usort liefern, was auch tadellos funktioniert... das ergebnis sieht dann folgendermassen aus: anton finanzen berta gl boris finanzen cesar finanzen dora it ich möchte aber die ausgabe so verändern das ich folgendes bekomme A anton finanzen B berta gl boris finanzen C cesar finanzen D dora it vielen dank für euere hilfe... – if(($ergebnis[$i]['displayname'][0]) == ($ergebnis[$i]['displayname'][0])) { } else { echo $ergebnis[$i]['displayname'][0]; } müsste es nicht so irgendwie funktionieren? Zitieren Link zu diesem Kommentar
ich1987 10 Geschrieben 5. Februar 2009 Melden Teilen Geschrieben 5. Februar 2009 moin, du könntest die einzelnen Array Elemente per "substr" auf den ersten Buchstaben zerlegen und dann mit ner if-Anweisung den Aufbau so gestallten wie du willst. In dem Fall wird der erste Buchstabe genommen in der $fkey Variable gespeichert, ist diese Variable gleich der variable $lastfkey, dann ist der Anfansbuchstabe der gleich, sind die beiden Variablen nicht gleich wird der Anfangsbuchstabe genommen und als Upper Case dargestellt. Hab zwar das nicht getestet sollte aber genau das machen was du willst. Aber ich glaube das geht noch einfacher, es gibt meiner Meinung nach eine Array Funktion die ein Array neu "berechnet" bzw. neu aufbaut aus den Werten die schon drinne sind, da kannst du auch neue Schlüssel anlegen, also z.B. "A" => "NAME mit A am ANfang", "B" => "Name mit B am Anfang" etc... $lastfkey = ""; for ($i=0; $i<$anzahl; $i++) { $fkey = substr($ergebnis[$i]["displayname"], 1, 1); echo "<tr>"; if($fkey != $lastfkey) { echo "<td width=150 colspan='2'>".strtoupper($fkey)."</td>"; } else { echo "<td width=150>" . $ergebnis[$i]["displayname"] . "</td>"; if (empty($ergebnis[$i]['department'])) { echo '<td width=150> </td>'; } else /*Breite vom Feld*/ { echo '<td width=150>' . $ergebnis[$i]['department'] . '</td>'; } } echo "</tr>"; $lastfkey = $fkey; } Gruß ich Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.