J'ai utilisé la fonction strip_tags en PHP et j'ai eu quelques problèmes comme : après un saut de ligne, une nouvelle ligne apparaît avec quelques espaces, puis un nouveau saut de ligne apparaît continuellement ...etc. sans aucune règle :(.
Voici ma solution pour traiter les strip_tags
Remplacer plusieurs espaces par un seul, plusieurs sauts de ligne par un seul saut de ligne
function cleanHtml($html)
{
// Clean code into script tags
$html = preg_replace('#<script(.*?)>(.*?)</script>#is', '', $html);
// Clean code into style tags
$html = preg_replace('/<\s*style.+?<\s*\/\s*style.*?>/si', '', $html );
// Strip HTML
$string = trim(strip_tags($html));
// Replace multiple spaces on each line (keep linebreaks) with single space
$string = preg_replace("/[[:blank:]]+/", " ", $string); // (*)
// Replace multiple spaces of all positions (deal with linebreaks) with single linebreak
$string = preg_replace('/\s{2,}/', "\n", $string); // (**)
return $string;
}
Les mots clés sont (*) et (**).