imagedestroy() là hàm tích hợp sẵn trong PHP dùng để hủy hình ảnh và giải phóng bộ nhớ liên quan đến hình ảnh đó.
Cú pháp
bool imagedestroy(resource $image)
Tham số
imagedestroy() chỉ nhận một tham số: $image. Chứa tên biến hình ảnh.
Giá trị trả về
imagedestroy() trả về true khi thành công, false khi thất bại.
Ví dụ 1 - Hủy hình ảnh sau khi tải
<?php
// Tải hình ảnh PNG từ thư mục cục bộ
$img = imagecreatefrompng('C:\xampp\htdocs\Images\img32.png');
// Cắt hình ảnh
$cropped = imagecropauto($img, IMG_CROP_BLACK);
// Chuyển sang file PNG
imagepng($cropped);
// Hủy hình ảnh đã cắt để giải phóng bộ nhớ
imagedestroy($cropped);
?>
Kết quả
Lưu ý - Bằng cách dùng imagedestroy(), chúng ta đã hủy biến $cropped nên không thể truy cập nữa.
Giải thích - Trong ví dụ 1, imagecreatefrompng() tải hình ảnh từ ổ cứng và cắt một phần bằng imagecropauto(). Sau khi cắt, dùng imagedestroy() để hủy hình ảnh. Không thể truy cập hình ảnh hoặc biến $cropped sau khi hủy.
Ví dụ 2
<?php // Tạo hình ảnh 50x50 $img = imagecreatetruecolor(50, 50); // Giải phóng hình ảnh khỏi bộ nhớ imagedestroy($img); ?>
Lưu ý - Trong code trên, hình ảnh 50×50 được tạo bằng imagecreatetruecolor(). Sau khi tạo, dùng imagedestroy() để giải phóng bộ nhớ.