Sie sind hier: Startseite -> PHP-Grundlagen -> Textsortierung (sort)

Textsortierung mit PHP ändern

Reihenfolge im Text manipulieren

Eine wichtige Funktion bei der Manipulation von Text ist jene der Sortierung. Man erhält aus der Datenbank oder anderen Quellen einen Text und möchte diesen alphabetisch anordnen, ohne manuell arbeiten zu müssen. Für solche Aufgaben stehen die Befehle explode und implode zur Verfügung.

Das wird man nicht bei einem normalen Artikeltext brauchen können, aber bei einer Auflistung bestimmter Namen ist die Anwendung schon viel interessant, will man eine korrekte Reihenfolge erzielen.

Sortierung im Text mit PHP erreichen

<?php
$beispieltext = "LASK,Sturm Graz,Austria Wien,Rapid Wien,Red Bull Salzburg";
echo $beispieltext;
$sorter = explode(",", $beispieltext);
sort($sorter);
$beispieltext = implode(",", $sorter);
echo $beispieltext;
?>

ergibt:

LASK,Sturm Graz,Austria Wien,Rapid Wien,Red Bull Salzburg
Austria Wien,LASK,Rapid Wien,Red Bull Salzburg,Sturm Graz

Der angeführte Beispieltext wird zuerst durch den PHP-Befehl explode in ein Array eingelesen, wobei dieses Array der Variable $sorter zugewiesen wird. Damit die einzelnen Begriffe (in diesem Fall als Beispiel österreichische Fußballvereine) auch richtig getrennt werden, wird als Trennungszeichen der Beistrich angeführt. Das ist ein Vorgriff für die Array-Programmierung, mit der Werte eingelesen werden können. Durch die Technik mit dem Befehl explode kann man daher ein Array anlegen und entsprechend manipulieren, also verschiedene Werte mit einer Variable speichern und bearbeiten.

Die Variable wird nun durch den PHP-Befehl sort sortiert, sodass eine richtige aufsteigende Reihenfolge gewährleistet wird. Nachdem diese Arbeit erledigt ist, wird mit dem Befehl implode die Zeichenkette wieder zusammengeführt. Wieder gilt als Kriterium der Beistrich, der zwischen den einzelnen Einträgen eingesetzt wird. Das Ergebnis ist eine in richtiger Reihenfolge aufgebaute Textzeile mit den Vereinen gemäß Alphabet.

Allerdings muss man hier ein Detail beachten: Die Sortierung funktioniert nämlich nur dann, wenn es keine Leerzeichen zwischen den Textstellen - in diesem Fall den Vereinsnamen - gibt. Würde der Beispieltext mit "LASK, Sturm Graz" beginnen, dann würde das Leerzeichen zwischen dem Beistrich und Sturm dafür sorgen, dass der LASK nicht richtig gereiht wird.

Es macht also Sinn, eine Zeichenkette zuerst von seinen Leerzeichen zu befreien, ehe man eine solche Sortierfunktion einsetzt.

Lesen Sie auch

PHP + Text ist ein sehr wichtiges Thema in vielen Skripte, die mit PHP programmiert werden. Denn man hat es oft mit Text zu tun, den externe Personen in Formulare eingeben - inklusive in Redaktionssysteme. Der Text soll aber perfekt aussehen und daher braucht es Werkzeuge, um ihn zu hinterfragen, zu kürzen, zu ersetzen oder überhaupt zu löschen.

Die Basiswerkzeuge können dabei helfen, dass man unnötige Leerzeichen in die Wüste schickt oder dass man den Text in Großbuchstaben umwandelt - vollkommen automatisch, versteht sich. Auch die Aufteilung eines vorgegebenen Textes mittels explode in ein Array ist als Voraussetzung für weitere Bearbeitungen wichtig.

Und dann gibt es noch viele weitere Möglichkeiten, was mit dem Text gemacht werden kann. Man kann mit substr den Text auf die gewünschte Länge kürzen, man kann aber auch eine Abfrage durchführen, ob der Text eine bestimmte Zeichenkette beinhaltet. Mit str_replace kann man überhaupt gleich den Text ersetzen oder löschen und mit htmlentities die Sonderzeichen codieren.

Themenseiten

Diesen Artikel teilen

Infos zum Artikel

Text mit PHP sortierenArtikel-Thema: Textsortierung mit PHP ändern
Beschreibung: Mit ✅ PHP kann man einen bestehenden Text in seiner ✅ Reihenfolge verändern und damit eine neue Sortierung anbringen.

Kategorien

Grundlagen
HTML-Grundlagen
CSS-Grundlagen
Javascript-Grundlagen
PHP-Grundlagen
MySQL-Grundlagen
SEO-Grundlagen

Infos, Tipps, Vermarktung
Webdesign-Lexikon
Online-Werbung
PHP-Codeschnipsel
Praxisartikel