PHP tidak menentukan hanya menghasilkan file html, ia dapat menghasilkan file gif dinamis. Saya mengalami beberapa masalah saat menggunakan php untuk menghasilkan gambar gif secara dinamis, yang telah diselesaikan. Saya menggunakan php4.05 (untuk win32) + Apache3.1.2_win32.
Masalah 1: Program yang menghasilkan gif secara dinamis tidak dapat dijalankan sama sekali
Saya menulis contoh tentang penggunaan php untuk menghasilkan gif. Ketika saya menjalankannya, saya menemukan bahwa halaman tersebut tidak dapat di-refresh, seolah-olah sudah mati, dan browser tidak menampilkan pesan kesalahan apa pun.
Solusi : Modifikasi php.ini pada direktori tempat php berada.
Modifikasi php.ini pada path tempat php diinstall (catatan: harus php.ini pada path php) extension_dir = ekstensi path tempat php diinstall (untuk contoh: c:phpekstensi).
Pertanyaan 2: php_gd.dll tidak mendukung gif.
Saya memuat pustaka tautan dinamis php_gd.dll di awal program: dl("php_gd.dll"); tetapi saat menjalankan program, muncul hasil berikut:
<br> <b >Peringatan</b>: ImageGif: Tidak ada dukungan GIF dalam build PHP ini di <b>d:apachehtdocsgif2.php3</b> online <b>12</b><br>.
Solusi: gunakan php4.05
Baru kemudian saya menemukan bahwa masalah yang tertulis di buku adalah php_gd.dll sama sekali tidak mendukung pembuatan gif. Setelah dibimbing oleh seorang ahli, saya menemukan bahwa versi php4.04 saya untuk win32 tidak memiliki php_gd_gif.dll, jadi Saya mengunduh versi php4 yang lebih tinggi.05, yang berisi php_gd_gif.dll yang mendukung pembuatan gif dinamis.
Pertanyaan 3: Muncul peringatan: Peringatan: Pendaftaran fungsi gagal - nama duplikat - imagearc di d:apachehtdocsgif2.php3 on line 3.
Programnya adalah sebagai berikut:
<?
dl("php_gd_gif.dll");
header("tipe konten:gambar/gif");
$im = pembuatan gambar(400,30);
$hitam = alokasi warna gambar($im,0,0,0);
$putih = alokasi warna gambar($im,255,255,255);
imageline($im,200,15,215,15,$putih);
imagestring($im, 5, 4, 10, "Ini Gif", $putih);
gambargif($im);
penghancuran gambar($im);
?>
Solusi : Modifikasi program atau php.ini
Fungsi dl() digunakan untuk memuat dll, tetapi jika tanda ";" di depan dll yang diperlukan telah dihapus di file php.ini, maka jangan gunakan fungsi ini untuk saat ini.
Jika ";" sebelum extension=php_gd_gif.dll pada file ini tidak dihapus, maka dl("php_gd_gif.dll"); akan berpikir itu adalah nama duplikat.