"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo determinar el tipo de contenido de imagen correcto para encabezados PHP?

¿Cómo determinar el tipo de contenido de imagen correcto para encabezados PHP?

Publicado el 2024-11-05
Navegar:270

How to Determine the Correct Image Content Type for PHP Headers?

Determinación del tipo de contenido de imagen para el encabezado PHP

Al mostrar imágenes desde fuera de la raíz web utilizando la función Encabezado(), los usuarios pueden encontrar confusión con respecto al tipo de contenido especificado: imagen/png. Sin embargo, a pesar del tipo de contenido fijo, las imágenes con varias extensiones (por ejemplo, JPG, GIF) aún se pueden mostrar correctamente.

Para resolver esta discrepancia, es crucial determinar dinámicamente la extensión correcta. tipo de contenido de imagen según la extensión del archivo. El siguiente fragmento de código proporciona una solución:

$filename = basename($file);
$file_extension = strtolower(substr(strrchr($filename,"."),1));

switch( $file_extension ) {
    case "gif": $ctype="image/gif"; break;
    case "png": $ctype="image/png"; break;
    case "jpeg":
    case "jpg": $ctype="image/jpeg"; break;
    case "svg": $ctype="image/svg xml"; break;
    default:
}

header('Content-type: ' . $ctype);

Al utilizar este enfoque, el código puede identificar el tipo de contenido correcto según la extensión del archivo y configurar el encabezado en consecuencia. Vale la pena señalar que el tipo de contenido correcto para los archivos JPG es imagen/jpeg, que debe usarse en lugar de imagen/png, que antes era confuso.

Declaración de liberación Este artículo se reimprime en: 1729204217 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3