PHP no especifica generar solo archivos html, puede generar archivos gif dinámicos. Encontré algunos problemas al usar php para generar imágenes gif dinámicamente, los cuales se resolvieron. Estoy usando php4.05 (para win32) + apache3.1.2_win32.
Problema 1: el programa que genera gif dinámicamente no se puede iniciar en absoluto
Escribí un ejemplo sobre el uso de php para generar gif. Cuando lo ejecuté, descubrí que la página simplemente no se podía actualizar, como si estuviera muerta, y el navegador no mostraba ningún mensaje de error.
Solución: Modifique php.ini en el directorio donde se encuentra php.
Modifique php.ini en la ruta donde está instalado php (nota: debe ser php.ini en la ruta de php) extension_dir = las extensiones de ruta donde está instalado php (para ejemplo: c:phpextensiones).
Pregunta 2: php_gd.dll no admite gif.
Cargué la biblioteca de enlaces dinámicos php_gd.dll al comienzo del programa: dl("php_gd.dll"); pero al ejecutar el programa, apareció el siguiente resultado:
<br> <b >Advertencia</b>: ImageGif: No hay soporte para GIF en esta compilación PHP en <b>d:apachehtdocsgif2.php3</b> en la línea <b>12</b><br>.
Solución: use php4.05
Sólo entonces descubrí que el problema escrito en el libro era que php_gd.dll no podía soportar la generación de gif en absoluto. Después de ser guiado por un experto, descubrí que mi versión de php4.04 para win32 carecía de php_gd_gif.dll. Descargué una versión superior de php4 .05, que contiene php_gd_gif.dll que admite la generación de gif dinámicos.
Pregunta 3: Aparece una advertencia: Advertencia: Error en el registro de la función - nombre duplicado - imagearc en d:apachehtdocsgif2.php3 en la línea 3.
El programa es el siguiente:
<?
dl("php_gd_gif.dll");
encabezado("tipo de contenido:imagen/gif");
$im = crearimagen(400,30);
$negro = imagecolorallocate($im,0,0,0);
$blanco = imagecolorallocate($im,255,255,255);
línea de imagen($im,200,15,215,15,$blanco);
imagestring($im, 5, 4, 10, "Esto es un Gif", $blanco);
imagengif($im);
destrucción de imágenes ($im);
?>
Solución: Modificar el programa o php.ini
La función dl() se utiliza para cargar dll, pero si el ";" delante del dll requerido se ha eliminado en el archivo php.ini, no utilice esta función en este momento.
Si el ";" antes de extensión = php_gd_gif.dll en el archivo ini no se elimina, entonces se debe usar dl("php_gd_gif.dll"); En resumen: los dos son diferentes entre sí; de lo contrario, el servidor. Pensará que es un nombre duplicado.