Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich Strings in PHP effizient auf eine bestimmte Länge kürzen und Umbrüche in der Wortmitte vermeiden?

Wie kann ich Strings in PHP effizient auf eine bestimmte Länge kürzen und Umbrüche in der Wortmitte vermeiden?

Barbara Streisand
Barbara StreisandOriginal
2024-12-23 22:30:15178Durchsuche

How Can I Efficiently Trim Strings to a Specified Length in PHP and Avoid Mid-Word Breaks?

Strings mit Punkten in PHP kürzen: Eine umfassende Anleitung

Müssen Sie Strings in Ihrem PHP-Code komprimieren? So können Sie eine Zeichenfolge auf eine bestimmte Anzahl von Zeichen kürzen und Auslassungspunkte (...) anhängen, wenn Zeichen entfernt werden.

Die schnelle Lösung:

$string = substr($string, 0, 10) . '...';

Diese einfache Methode ruft die ersten zehn Zeichen der Zeichenfolge ab, gefolgt von Auslassungszeichen, falls erforderlich.

Optimiert Ansatz:

$string = (strlen($string) > 13) ? substr($string, 0, 10) . '...' : $string;

Diese aktualisierte Version enthält eine Prüfung, um sicherzustellen, dass die resultierende Zeichenfolge die gewünschte Länge hat. Wenn die ursprüngliche Zeichenfolge mehr als 13 Zeichen umfasst, wird sie auf 10 Zeichen gekürzt und mit Auslassungspunkten versehen. Andernfalls bleibt die ursprüngliche Zeichenfolge ungekürzt.

Funktionale Abstraktion:

function truncate($string, $length, $dots = "...") {
    return (strlen($string) > $length) ? substr($string, 0, $length - strlen($dots)) . $dots : $string;
}

Diese Funktion kapselt die Trimmlogik und ermöglicht Ihnen die Wiederverwendung mit verschiedenen Parametern. Es werden drei Argumente benötigt: die zu kürzende Zeichenfolge, die gewünschte Länge und eine optionale Auslassungszeichenfolge.

Umbrüche in der Wortmitte vermeiden:

function truncate($string, $length = 100, $append = "…") {
  $string = trim($string);

  if (strlen($string) > $length) {
    $string = wordwrap($string, $length);
    $string = explode("\n", $string, 2);
    $string = $string[0] . $append;
  }

  return $string;
}

Dies wurde verbessert Die Funktion nutzt Zeilenumbruch, um zu verhindern, dass Zeichenfolgen mitten im Wort unterbrochen werden. Wenn die Zeichenfolge länger als die angegebene Länge ist, wird sie umgebrochen und am nächsten Leerzeichen abgeschnitten.

Das obige ist der detaillierte Inhalt vonWie kann ich Strings in PHP effizient auf eine bestimmte Länge kürzen und Umbrüche in der Wortmitte vermeiden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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