Solution to the problem that php cannot output gif: 1. Modify "php.ini" in the directory where php is located; 2. Download "php_gd_gif.dll" that supports generating dynamic gif; 3. Modify the program or "php. ini".
The operating environment of this article: windows7 system, php4.05 version, DELL G3 computer
Problems encountered when using PHP to dynamically generate gif and Solution
PHP does not specify to only output html files, it can generate dynamic gif files. I encountered some problems when using php to dynamically generate gif images. They have been solved. I am using php4.05 (for win32) apache3.1.2_win32.
Question 1:
The program that dynamically generates gif cannot be used to access MongoDB files. I wrote an example about using php to generate gif. After running it, I found The page just cannot be refreshed, as if it is dead, and the browser does not give any error prompts.
Solution:
Modify php.ini in the directory where php is located
Modify php.ini in the path where php is installed (note: it must be php in the php path .ini) extension_dir = the path to install php extensions (for example: c:phpextensions).
Question 2:
php_gd.dll does not support gif
I loaded the php_gd.dll dynamic link library at the beginning of the program: dl(" php_gd.dll"); But when running the program, this result appeared:
<br><b>Warning</b>: ImageGif: No GIF support in this PHP build in <b>d:apachehtdocsgif2.php3</b> on line <b>12</b><br>。
Solution:
Use php4.05
That’s when I discovered The problem written in the book is that php_gd.dll cannot support generating gif at all. After being guided by an expert, I found out that my version of php4.04 for win32 lacks php_gd_gif.dll, so I downloaded a higher version of php4.05. Here is There is php_gd_gif.dll that supports generating dynamic gifs.
Question 3:
A warning appears: Warning: Function registration failed – duplicate name – imagearc in d:apachehtdocsgif2.php3 on line 3
Program As follows:
<? dl("php_gd_gif.dll"); header("content-type:image/gif"); $im = imagecreate(400,30); $black = imagecolorallocate($im,0,0,0); $white = imagecolorallocate($im,255,255,255); imageline( $im,200,15,215,15,$white); imagestring($im, 5, 4, 10, "This is a Gif", $white); imagegif($im); imagedestroy($im); ?>
Solution:
Modify the program or php.ini
dl() function is used to load dll, but if in the php.ini file If the ";" in front of the required dll has been removed, then do not use this function at this time.
If the ";" before extension=php_gd_gif.dll in the ini file is not removed, then dl("php_gd_gif.dll"); must be used to load it. In short: the two are different from each other, otherwise the server Considered a duplicate naming.
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of What to do if php cannot output gif. For more information, please follow other related articles on the PHP Chinese website!