Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich Strings in PHP auf das nächste Wort kürzen?

Wie kann ich Strings in PHP auf das nächste Wort kürzen?

Linda Hamilton
Freigeben: 2024-12-23 14:44:13
Original
490 Leute haben es durchsucht

How Can I Truncate Strings in PHP to the Nearest Word?

Strings in PHP auf das nächste Wort kürzen

So schneiden Sie einen String am Ende des letzten Wortes vor einer bestimmten Zeichenanzahl ab, PHP bietet mehrere Methoden.

Wortumbruch verwenden Funktion:

Die Zeilenumbruchfunktion unterteilt den Text in mehrere Zeilen mit maximaler Breite und bricht automatisch an Wortgrenzen. Indem Sie nur die erste Zeile verwenden, können Sie den Text auf das nächste Wort kürzen:

$truncated_string = substr($string, 0, strpos(wordwrap($string, $desired_width), "\n"));
Nach dem Login kopieren

Edge Case Handling:

Diese Methode verarbeitet keine kürzeren Texte als die gewünschte Breite. Verwenden Sie dazu Folgendes:

if (strlen($string) > $desired_width) {
    $string = substr($string, 0, strpos(wordwrap($string, $desired_width), "\n"));
}
Nach dem Login kopieren

Token-Trunkierung:

Um potenzielle Probleme mit Zeilenumbrüchen im Text zu beheben, teilt diese Methode den Text in Token (Wörter) auf , Leerzeichen und Zeilenumbrüche) und akkumuliert ihre Längen:

function tokenTruncate($string, $desired_width) {
    $parts = preg_split('/([\s\n\r]+)/', $string, null, PREG_SPLIT_DELIM_CAPTURE);
    $length = 0;
    $last_part = 0;
    for (; $last_part < count($parts); ++$last_part) {
        $length += strlen($parts[$last_part]);
        if ($length > $desired_width) { break; }
    }
    return implode(array_slice($parts, 0, $last_part));
}
Nach dem Login kopieren

Diese Methode verarbeitet auch UTF8 Zeichen.

Einheitentests:

class TokenTruncateTest extends PHPUnit_Framework_TestCase {
    // ... test cases ...
}
Nach dem Login kopieren

Zusätzliche Hinweise:

  • Diese Methode basiert auf Wortgrenzen .
  • Für den Umgang mit Sonderzeichen wie Emojis oder verschiedenen Sprachen sind möglicherweise zusätzliche Schritte erforderlich Überlegungen.

Das obige ist der detaillierte Inhalt vonWie kann ich Strings in PHP auf das nächste Wort kürzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage