Résumé d'une chaine formatée (balise tronquée)
Bonjour,
Pour mon système de News, j'ai du texte formaté (avec balises html)
Je fais un RESUME du texte (les 60 1ers caractères, par exemple) :
Or, le texte étant formaté, une balise html peut se trouver tronquée, et/ou d'autres non fermées ! :
Code:
1 2 3 4 5 6
| <?php
$texte = 'qsdf <u>qfqsdfqsdf <strong>sfqdsdffsdt wqqsdfsdf qsdfqs</strong> qsdqsd qsdqqsd fdsfqsdf fqsdf qsdfq qsdf</u> qsdf sdfqsdfqsdfqsdf.';
$resume = substr($texte,0,59);
// on obtient -->
$resume = 'qsdf <u>qfqsdfqsdf <strong>sfqdsdffsdt wqqsdfsdf qsdfqs</str';
?> |
De ce fait, la suite de la page est toute chamboulée ! :fou:
Comment m'y prendre pour :
1- fermer une balise tronquée
---> si c'est une balise "ouvrante : la supprimer
---> si c'est une balise fermante : la fermer (et la compléter : </str --> </strong>
2- trouver les balises non fermées ? Et donc les fermer.
:help: Possible ? / Pas possible ? / Trop compliqué ? / ...
Note : je sais que la solution la plus simple serait d'enlever toutes les balises html, mais bon ...