44 Stimmen

PHP: String am letzten Leerzeichen abschneiden

Frage von Compi | Letztes Update am 25.04.2022 | Erstellt am 14.05.2016

Ich möchte eine Vorschau eines Textes anzeigen lassen. Dafür lese ich die ersten 200 Zeichen aus meiner Datenbank aus und lasse diese anzeigen.

Nun passiert es natürlich öfters, dass der String gerade mitten im Wort aufhört, was unschön aussieht. Gerne würde ich daher mit PHP das letzte Leerzeichen in dem String suchen und an dieser Stelle kürzen.

Hat jemand eine PHP-Funktion dafür?

AntwortenPositivNegativ
3Beste Antwort3 Stimmen

Klar, du kannst einfach die PHP-Funktion strrpos benutzen, die dir das letzte Vorkommen einer Zeichenkette in einem String liefert.

Mit dem Abschneiden könnte es dann folgendermaßen aussehen:

$s = strip_tags($s);       // HTML entfernen
$p = strrpos($s, ' ');     // Letztes Leerzeichen suchen

if ($p !== false) {        // Leerzeichen wurde gefunden
  $s = substr($s, 0, $p);  // Kürzen
}

Die erste Zeile ist optional, aber hilfreich. Falls dein String $s HTML-Tags enthält, könnten diese natürlich auch vor dem endenden Tag abgeschnitten werden, was dann zu merkwürdigen Effekten führen kann (zum Beispiel das alles ab dem text zu einem Link wird oder fett).

Anschließend suchen wir die Position vom letzten Leerzeichen und schneiden den String nur dann ab, wenn auch ein Leerzeichen gefunden wurde.
Letztes Update am 25.04.2022 | Erstellt am 14.05.2016

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.