Fonction PHP : htmlToText()
Ici, vous pouvez voir (et copier/coller) le code complet de la fonction PHP htmlToText(). N'hésitez pas voter pour cette fonction si elle vous plaît ou si vous vouv en servez !
htmlToText() ajouté le 2009-07-04 15:15:00 par greg
function htmlToText($textonly) {
$textonly = str_replace(array('<p>', '<P>'), "", $textonly);
$textonly =preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $textonly);
$returns = array('<br>', '<br/>', '<br />', '<br >','<BR >', '<BR>', '<BR/>', '<BR />', '</p>', '</P>', '<p />', '<p/>', '<P />', '<P/>', '</h3>', '</H3>', '</h4>', '</H4>', '</h5>', '</H5>', '</h6>', '</H6>', '</h1>', '</H1>', '</h2>', '</H2>');
$textonly = str_replace($returns, "\n", $textonly);
$textonly = preg_replace('/<a href="([^"]*)"[^>]*>([^<]*)<\/a>/i','${2} ( ${1} )', $textonly);
$textonly = preg_replace('/<head>.*<\/head>/i', '', $textonly);
$textonly = preg_replace('~([0-9a-f]+);~ei', chr(hexdec("\\1")), $textonly);
$textonly = preg_replace('~([0-9]+);~e', chr("\\1"), $textonly);
$trans_tbl = get_html_translation_table(HTML_ENTITIES);
$trans_tbl = array_flip($trans_tbl);
$textonly = strtr($textonly, $trans_tbl);
$textonly = strip_tags($textonly);
return $textonly;
}
Convertit du HTML en text en supprimant les balises HTML
Commentaires sur la fonctions php
trop Drole 06/07/2009 à 01:28
J'ai plus court
(http://fr3.php.net/manual/fr/function.strip-tags.php)
strip_tags();
Greg 07/07/2009 à 13:12
Ah ah trop drôle !!!
j'adore la dernière ligne :
$textonly = strip_tags($textonly);
Celle ci suffisait amplement !!!!
hihiii 09/07/2009 à 04:11
effectivement cela peut être utile pour du php 2
Robin 09/07/2009 à 20:54
Un simple ereg replace peut suffire aussi, désolé mais ta fonction, c'est dix lignes pour rien.
$contenu = ereg_replace("<[^>]*>", "", $contenu); Will 16/07/2009 à 07:27
Le strip_tags n'est pas du tout équivalent, en effet, il supprime trop de texte. Je n'ai pas de d'interpréteur PHP sous la main, pour autant, de mémoire, un texte avec des balises imbriquées ne passe pas. Seules les expressions régulières sont le salut de ce pb.
Enfin, l'extension 'ereg' devient peu à peu dépréciée au profit de 'preg'.
Voilou
Bat 14/10/2009 à 16:14
strip_tags suffit :)
syndrael 04/07/2009 à 16:32
Quid des Div, Table, Lu, Li, Script, et autres balises ?? L'idée est peut-être louable mais il faudrait à mon sens approfondir non ?