(PHP 4, PHP 5)
strip_tags — Retira las etiquetas HTML y PHP de un string
$str
[, string $allowable_tags
] )
Esta función intenta devolver un string con todos los bytes NUL y las etiquetas HTML y PHP retirados
de un str
dado. Se utiliza la misma máquina de estado de retirado de
etiquetas que la función fgetss().
str
El string de entrada.
allowable_tags
Se puede usar el segundo parámetro opcional para especificar cuales etiquetas no deben ser retiradas.
Nota:
Los comentarios HTML y etiquetas PHP también son retirados. Esto está en el código y no puede ser cambiado mediante
allowable_tags
.
Nota:
Este parámetro no debe contener espacios en blanco. strip_tags() ve como una etiqueta un string insensible a mayúsculas y minúsculas entre < y el primer espacio en blanco o >. Lo cual significa que strip_tags("<br/>", "<br>") devuelve un string vacío.
Devuelve el string despojado.
Versión | Descripción |
---|---|
5.0.0 | strip_tags() ahora es segura a nivel binario. |
4.3.0 | Los comentarios HTML ahora siempre son retirados. |
Ejemplo #1 Ejemplo de strip_tags()
<?php
$text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
echo strip_tags($text);
echo "\n";
// Permite <p> y <a>
echo strip_tags($text, '<p><a>');
?>
El resultado del ejemplo sería:
Test paragraph. Other text <p>Test paragraph.</p> <a href="#fragment">Other text</a>
Debido a que strip_tags() en realidad no valida el HTML, etiquetas parciales o rotas, pueden resultar en la eliminación de más texto/datos de lo que se espera.
Esta función no modifica los atributos de las etiquetas que se permitan
mediante allowable_tags
, incluyendo los
los atributos style y onmouseover
que un usuario malicioso puede abusar al postear texto que se mostrará
a otros usuarios.
Nota:
Los nombres de etiquetas en de la entrada HTML que sean mayores que 1023 bytes de longitud, serán tratados como no válidos, independientemente del parámetro
allowable_tags
.