imagedestroy() เป็นฟังก์ชันในตัวของ PHP ที่ใช้เพื่อทำลายภาพและปลดปล่อยหน่วยความจำที่เกี่ยวข้องกับภาพ
รูปแบบการใช้งาน (Syntax)
bool imagedestroy(resource $image)
พารามิเตอร์
imagedestroy() รับพารามิเตอร์เพียงตัวเดียวคือ $image ซึ่งเก็บชื่อของภาพ
ค่าที่คืนกลับ (Return Values)
imagedestroy() คืนค่า true เมื่อสำเร็จ และ false เมื่อล้มเหลว
ตัวอย่างที่ 1 - การทำลายภาพหลังโหลด
<?php
// โหลดภาพ PNG จากโฟลเดอร์ดิสก์ท้องถิ่น
$img = imagecreatefrompng('C:\xampp\htdocs\Images\img32.png');
// ตัดครอบภาพ
$cropped = imagecropauto($img, IMG_CROP_BLACK);
// แปลงเป็นไฟล์ PNG
imagepng($cropped);
// ทำลายภาพที่ตัดครอบเพื่อปลดปล่อย/คืนหน่วยความจำ
imagedestroy($cropped);
?>
ผลลัพธ์
หมายเหตุ - ด้วยการใช้ฟังก์ชัน imagedestroy() เราได้ทำลายตัวแปร $cropped และดังนั้น จึงไม่สามารถเข้าถึงได้อีกต่อไป
คำอธิบาย - ในตัวอย่างที่ 1 imagecreatefrompng() โหลดภาพจากโฟลเดอร์ดิสก์ท้องถิ่นและตัดครอบส่วนของภาพจากภาพที่กำหนดโดยใช้ฟังก์ชัน imagecropauto() หลังจากตัดครอบแล้ว ฟังก์ชัน imagedestroy() ถูกใช้เพื่อทำลายภาพ เราไม่สามารถเข้าถึงภาพหรือตัวแปร $cropped หลังจากทำลายภาพแล้ว
ตัวอย่างที่ 2
<?php // สร้างภาพขนาด 50 x 50 $img = imagecreatetruecolor(50, 50); // ปลดปล่อยภาพจากหน่วยความจำ imagedestroy($img); ?>
หมายเหตุ - ในโค้ด PHP ด้านบน ภาพขนาด 50×50 ถูกสร้างโดยใช้ฟังก์ชัน imagecreatetruecolor() หลังจากสร้างภาพแล้ว ฟังก์ชัน imagedestroy() ถูกใช้เพื่อปลดปล่อยหรือคืนหน่วยความจำที่ใช้