php - remove - strip_tags wordpress
Cómo recortar la etiqueta html y el formato con php? (1)
Por ejemplo
$string = ''<i>Line1</i><i><i><i><i><i></i></i></i></i></i><i><i><i><i>
<i>Line 2</i></i></i></i></i><i><i><i><i><i></i></i></i></i>
</i><i><i><i><i><i>Line 3</i></i></i></i></i>'';
¿Cómo elimino la etiqueta si el contenido dentro de ella está vacío y cómo la cierro si no está cerrada con php?
</ i>
Por favor ayuda a resolver este problema.
Puedes usar strip_tags
para esto
$string =''<i>Line1</i><i><i><i><i><i></i></i></i></i></i><i><i><i><i>
<i>Line 2</i></i></i></i></i><i><i><i><i><i></i></i></i></i>
</i><i><i><i><i><i>Line 3</i></i></i></i></i>'';
Para quitar las etiquetas
echo strip_tags($string);
Una forma de formatear las etiquetas que no están cerradas es
$doc = new DOMDocument();
$doc->loadHTML($string);
$string = $doc->saveHTML();
También podemos usar expresiones regulares para eliminar etiquetas html vacías. Aquí hay una pequeña función para hacerlo.
function remove_empty_tags ($string, $rep = NULL)
{
if (!is_string ($string)
|| trim ($string) == '''')
return $string;
return preg_replace (''/<([^<//>]*)>([/s]*?|(?R))<///1>/imsU'',!is_string ($rep) ? '''' : $rep,$string);
}
$string = remove_empty_tags($string);