php: สร้างห้องแสดงภาพอย่างง่าย
Submitted by wd on Wed, 2006-08-30 16:40
ปัญหาคือ ถ้ามีภาพมาก ๆ ถ้าเราใช้โปรแกรม gallery ก็จะยุ่งยากเกินไปในการนำภาพเข้าสู่ห้องแสดง
เลยทดลองเขียน php ในการแปลงไฟล์ภาพ แล้วแสดงผลเสร็จสรรพในตัวเดียวกัน
วิธีการคือ คัดลอกไฟล์ให้เข้าไปในไดเรคทอรี่ที่ต้องการ โปรแกรมที่สร้างขึ้น จะทำการแปลงโดยใช้ความสามารถของ convert ที่อยู่ในชุดแพคเกจ Image Magick (ต้องติดตั้ง imagemagick ก่อน)
ในโค๊ดตัวอย่าง จะแปลงภาพให้ลดเหลือ 50% ของไฟล์จริง แล้วจึงสร้างไฟล์ thumbnail สำหรับแสดงผลอย่างง่าย
โค๊ดตั้งชื่อว่า index.php มีดังนี้
<?php
if (!file_exists("thumb")) {
mkdir("thumb");
}
if (!file_exists("50")) {
mkdir("50");
}
$dh = opendir(".");
while (false !== ($mfile = readdir($dh))) {
if ($mfile == "." || $mfile == "..") {
continue;
}
if (strpos('.JPG .PNG .GIF .TIF', strtoupper(substr($mfile, -4))) === FALSE) {
continue;
}
if (!file_exists("thumb/$mfile")) {
exec("convert $mfile -resize 8% thumb/$mfile");
}
if (!file_exists("50/$mfile")) {
exec("convert $mfile -resize 50% 50/$mfile");
}
}
$dh = opendir("./50");
while (false !== ($mfile = readdir($dh))) {
if ($mfile == "." || $mfile == "..") {
continue;
}
print '<a href="./50/'.$mfile.'"><img src="thumb/'.$mfile.'"> </a>';
}
?>







Recent comments