Función html_entity_decode() de PHP
Ejemplo
Convierte las entidades HTML predefinidas "<" (menor que) y ">" (mayor que) en caracteres:
<?php $str = "Este es algún texto <b>en negrita</b>."; echo htmlspecialchars_decode($str); ?>
La salida HTML del código anterior es la siguiente (ver código fuente):
<!DOCTYPE html> <html> <body> Este es algún texto <b>en negrita</b>. </body> </html>
La salida del navegador del código anterior es la siguiente:
Este es algún texto en negrita.
Definición y uso
La función htmlspecialchars_decode() convierte las entidades HTML predefinidas en caracteres.
Las entidades HTML que se desencodificarán son:
- & Desencodifica a & (y)
- " Desencodifica a " (comilla doble)
- ' Desencodifica a ' (comilla simple)
- < Desencodifica a < (menor que)
- > Desencodifica a > (mayor que)
La función htmlspecialchars_decode() es el inverso de la función htmlspecialchars().
Sintaxis
htmlspecialchars_decode(string,flags)
Parámetro | Descripción |
---|---|
string | Obligatorio. Define la cadena que se debe desencodificar. |
flags |
Opcional. Define cómo se deben manejar las comillas y qué tipo de documento se debe usar. Tipos de comillas disponibles:
Flags adicionales para el tipo de documento utilizado:
|
Detalles técnicos
Valor de retorno: | Devuelve la cadena convertida. |
Versión de PHP: | 5.1.0+ |
Registro de actualizaciones: |
En PHP 5.4, se añadieron flags adicionales para especificar el tipo de documento utilizado:
|
Más ejemplos
Ejemplo 1
Convertir entidades HTML predefinidas a caracteres:
<?php $str = "Bill & 'Steve'"; echo htmlspecialchars_decode($str, ENT_COMPAT); // Solo convertir comillas dobles echo "<br>"; echo htmlspecialchars_decode($str, ENT_QUOTES); // Convertir comillas dobles y simples echo "<br>"; echo htmlspecialchars_decode($str, ENT_NOQUOTES); // No convertir ninguna comilla ?>
La salida HTML del código anterior es la siguiente (ver código fuente):
<!DOCTYPE html> <html> <body> Bill & 'Steve'<br> Bill & 'Steve'<br> Bill & 'Steve' </body> </html>
La salida del navegador del código anterior es la siguiente:
Bill & 'Steve' Bill & 'Steve' Bill & 'Steve'
Ejemplo 2
Convertir entidades HTML predefinidas a comillas dobles:
<?php $str = 'I love "PHP".'; echo htmlspecialchars_decode($str, ENT_QUOTES); // Convertir comillas dobles y simples ?>
La salida HTML del código anterior es la siguiente (ver código fuente):
<!DOCTYPE html> <html> <body> Me encanta "PHP". </body> </html>
La salida del navegador del código anterior es la siguiente:
Me encanta "PHP".