Maison >développement back-end >tutoriel php >Comment puis-je tronquer efficacement des chaînes en PHP et ajouter des points de suspension ?

Comment puis-je tronquer efficacement des chaînes en PHP et ajouter des points de suspension ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-09 16:46:18458parcourir

How Can I Efficiently Truncate Strings in PHP and Append an Ellipsis?

Tronquer des chaînes en PHP : couper et ajouter des points de suspension

En PHP, tronquer efficacement une chaîne à un nombre spécifié de caractères et ajouter des points de suspension (...) peut être réalisé en utilisant plusieurs méthodes.

Simple Version :

Pour une troncature rapide, la fonction substr() peut être utilisée :

$string = substr($string, 0, 10) . '...'; // Truncates to 10 characters

En vérifiant la longueur de la chaîne, nous pouvons nous assurer que la chaîne tronquée conserve l'original longueur avec les points de suspension ajoutés :

$string = (strlen($string) > 13) ? substr($string, 0, 10) . '...' : $string; // Truncates to 13 characters (or less)

Fonctionnel Approche :

Pour créer une fonction réutilisable :

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

Troncation avancée :

Pour éviter les sauts de mots, le wordwrap() La fonction peut être utilisée :

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;
}

Cette fonction préserve l'intégrité du mot tout en tronquant la chaîne à la valeur souhaitée. longueur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn