Encore une fois il est arrivé que d'une balise HTML unclosed a détruit les extraits de ma mise en page, mais le réseau peut en effet toujours trouver une solution rapidement.
Voici donc un extrait de code PHP de balises HTML ferme toutes. Bien que n'étant pas une solution assez, mais quelque chose a un meilleur m'est venu à pas pressés aussi.
function close_tags($html){
// Alle geöffneten Tags in ein Array
preg_match_all("#<([a-z]+)( .*)?(?!/)>#iU", $html, $result);
$openedtags = $result[1];
// Alle geschlossenen Tags in ein Array
preg_match_all("#</([a-z]+)>#iU",$html,$result);
$closedtags = $result[1];
$lenght = count($openedtags);
// Alle Tags geschlossen
if(count($closedtags) == $lenght)
return $html;
$openedtags = array_reverse($openedtags);
// Tags schließen
for($i = 0; $i < $lenght; $i++) {
if (!in_array($openedtags[$i],$closedtags))
$html .= '</'.$openedtags[$i].'>';
else
unset($closedtags[array_search($openedtags[$i],$closedtags)]);
}
return $html;
}
Quelle: textsnippets.com








