PHP HTML Codificar

PHP HTML Codificar
HTML depende en gran medida del uso de etiquetas y caracteres especiales. Algunos caracteres especiales en HTML contienen un significado especial que requiere que se usen con precaución.

Por ejemplo, etiquetas como se encuentran entre los caracteres más utilizados en HTML. Aunque no representan ninguna amenaza por su cuenta, cuando se usan mal, pueden romper toda la página web.

Dichos caracteres HTML también poseen una falla de seguridad significativa, especialmente en aplicaciones web dinámicas. Esto puede conducir a la inyección de código malicioso como JavaScript y los datos de formulario.

La esencia de esta guía es mostrarle cómo puede usar PHP para codificar o "desinfectar" los caracteres HTML. La codificación de tales caracteres en sitios web dinámicos evitará que las secuencias de comandos entre sitios y protegerán la página web de la ruptura.

Que esta codificando?

La codificación se refiere al proceso de conversión de caracteres reservados en entidades de caracteres HTML. Las entidades de personaje HTML se expresan como &value; donde el "valor" representa una abreviatura o número para cada personaje.

HTML ofrece una colección completa de entidades. Sin embargo, solo necesitamos preocuparnos por cuatro de ellos para fines de codificación:

  1. < - <
  2. > ->
  3. & - &
  4. = - "

Aprendamos cómo podemos usar PHP para codificar tales caracteres.

Funciones de codificación de PHP

PHP tiene dos funciones principales que puede usar para codificar los caracteres HTML.

  1. Htmlspecialchars ()
  2. Htmlentities ()

Las funciones htmlspecialchars () codifican los cuatro caracteres principales (arriba) mientras que la función htmentities () codificará todos los caracteres como sea posible.

Aprendamos a usar las dos funciones.

Php htmlspecialchars ()

Esta función convierte todos los caracteres HTML especiales o reservados en entidades HTML. Aunque puede especificar, la función ignorará las cotizaciones únicas de forma predeterminada.

La sintaxis general de la función es como se muestra:

htmlentities (string $ string, int $ flags bool);

La función acepta la cadena que contiene el HTML para ser codificado. También puede especificar los valores del indicador que le permiten ajustar cómo funciona el método.

PHP también le permite especificar el método de codificación que desea utilizar para las entidades HTML. La siguiente imagen muestra los Charsets compatibles.

El siguiente ejemplo muestra cómo usar el método htmlspecialchars ().

$ str = "html usos para etiquetas";
echo htmlspecialchars ($ str);
?>

El ejemplo anterior codificará los caracteres HTML especificados en la variable $ STR.

La salida es como se muestra:

HTML usa < and > para etiquetas

Si desea que la función procese cotizaciones simples y dobles, puede usar un indicador como se muestra en el ejemplo a continuación:

$ str = "una sola cita como 'y' se ignorará por defecto";
echo htmlspecialchars ($ str, ent_quotes);
?>

Una vez que ejecute el código anterior, la función procesará las cotizaciones individuales y dará una salida como se muestra:

Una sola cotización como 'y' se ignorará de forma predeterminada

Php htmlentities ()

Veremos el próximo personaje de codificación es el PHP HTMLentities (). Esta función convierte todos los caracteres HTML aplicables a entidades HTML. Es una elección perfecta cuando necesitas procesar tu HTML de forma segura.

La sintaxis general de la función es como se muestra:

htmlentities (string $ string, int flags);

La función es muy similar a htmlspecialchars () excepto que procesa todos los caracteres que puede, por defecto,.

El siguiente ejemplo le muestra cómo usar la función htmlentities ().

$ str = "

Esto es válido Código HTML

";
echo htmlentities ($ str);
?>

El código anterior debe devolver todas las etiquetas convertidas a entidades como:

Esto es válido Código HTML

Similar a la función htmlspecialchars (), admite banderas y codificaciones de charset. Consulte la documentación para descubrir más.

Conclusión

En esta guía, aprendiste cómo la codificación de personajes HTML. También aprendió a usar PHP para convertir los caracteres HTML en entidades HTML.

Gracias por leer y estén atentos para más.