00 Stimmen

PHP: X-tes Zeichen von hinten aus einem String auslesen

Frage von Gast | 13.07.2015 um 18:35

Ich möchte gern ein bestimmtes Zeichen aus einem beliebigen String auslesen. Ich weiß das man über eckige Klammern auf einen einzelnen Buchstaben eines Strings zugreifen kann, also zum Beispiel $string[2] um den dritten Buchstaben auszulesen.

Allerdings bringt mich das nicht wirklich weiter, da ich die gewünschten Positionen von hinten gezählt benötige. Also zum Beispiel das letzte Zeichen, das vorletzte Zeichen oder das drittletzte Zeichen eines beliebig langen Strings.

Kann mir jemand einen Tipp geben, wie ich dieses Vorhaben in PHP umsetzen kann? Gibt es vielleicht sogar eine Funktion dafür?

AntwortenPositivNegativ
0Beste Antwort0 Stimmen

Prinzipiell hast du mehrere Möglichkeiten, um das entsprechende Zeichen aus dem String schneiden zu können.

Hier ist ein Beispiel, wie das Zeichen mit eckigen Klammern auslesen kannst:

$s = $abcdef;

echo $s[strlen($s)-1]; // f
echo $s[strlen($s)-2]; // e
echo $s[strlen($s)-3]; // d

Um die Zeichen von hinten zu erreichen, berechnen wir hier zunächst mit strlen($s) die Gesamtlänge des Strings und ziehen danach die entsprechende Position von hinten ab. "strlen($s)-1" ergibt entsprechend die letzte Position, "strlen($s)-2" die vorletzte und so weiter.

Eine andere Möglichkeit besteht darin, die Funktion substr() zu verwenden, die uns einen Teil-String des übergebenen Strings liefert. Auch dazu ein kleines Beispiel:

$s = $abcdef;

echo substr($s, -1, 1); // f
echo substr($s, -2, 1); // e
echo substr($s, -3, 1); // d

Das Ergebnis ist identisch zum ersten Beispiel. Wie übergeben substr() als erstes unseren String, als zweites die Startposition des Teil-Strings von hinten (das erreichen wir durch negative Werte) und als dritten und letzten Parameter die gewünschte Länge des Teil-Strings. Diese ist in jedem Fall 1, da wir uns ja für genau ein Zeichen interessieren.
13.07.2015 um 23:05

AntwortenPositiv Negativ
Antworten

Ähnliche Themen

Wichtiger Hinweis

Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.

Jetzt mitmachen

Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.