10/10/2018, 00:16
Lỗi khi resize file ảnh có kích thước lớn
Hôm trước em có làm cái code PHP upload và resize image. Khi upload và resize file ảnh có độ phân giải vừa phải (từ 1024x768 trở xuống) thì không vấn đề gì, nhưng khi upload và resize ảnh cỡ 1920x1200 px thì nó báo lỗi này:
Allowed memory size of 8388608 bytes exhausted (tried to allocate 7680 bytes) in includesuploadImg.php on line 10
Còn đây là code của file uploadImg.php của em:
Line 10 ở đây là cái dòng $image = imagecreatefromjpeg($file);
Em chẳng biết lỗi này ra sao? Bác này biết giúp em.
Allowed memory size of 8388608 bytes exhausted (tried to allocate 7680 bytes) in includesuploadImg.php on line 10
Còn đây là code của file uploadImg.php của em:
PHP Code:
<?php
class image { // start class
public function resizeImg($path, $file_name, $ext, $file_tmp, $newW, $newH) { // start function resizeImg
$file = $path.$file_name;
move_uploaded_file($file_tmp, $file);
list($width, $height) = getimagesize($file);
$tn = imagecreatetruecolor($newW, $newH);
if($ext == ".jpg" || $ext == ".jpeg") {
$image = imagecreatefromjpeg($file);
}elseif($ext == ".png"){
$image = imagecreatefrompng($file);
}else{
$image = imagecreatefromgif($file);
}
imagecopyresampled($tn, $image, 0, 0, 0, 0, $newW, $newH, $width, $height);
if($ext == ".jpg" || $ext == ".jpeg") {
imagejpeg($tn, $file, 100);
}elseif($ext == ".png"){
imagepng($tn, $file, 100);
}else{
imagegif($tn, $file, 100);
}
} // end function resizeImg
} // end class
?>
Em chẳng biết lỗi này ra sao? Bác này biết giúp em.
zoejoe
viết 02:25 ngày 10/10/2018
Có vẻ như file ảnh quá lớn, php handle không nổi (do giới hạn bộ nhớ được phép thực thi)
s.code
viết 02:24 ngày 10/10/2018
Vào php.ini sửa lại cái thông số memory là OK. Mặc định là 2MB (hình như thế). Còn trên host thì nó thay đổi sẵn rồi. THường > 8MB (hình như thế)
zoejoe
viết 02:28 ngày 10/10/2018
Tìm đến dòng nì trong php.ini :
Code:
sacroyant
viết 02:25 ngày 10/10/2018
Cái này có ảnh hưởng đến phần MySQL khi chúng ta import data không Zoe ơi ?
zoejoe
viết 02:30 ngày 10/10/2018
Được gửi bởi sacroyant
sacroyant
viết 02:24 ngày 10/10/2018
Được gửi bởi zoejoe
jiSh@n
viết 02:23 ngày 10/10/2018
Được gửi bởi sacroyant
seaurchin
viết 02:23 ngày 10/10/2018
Thank các bạn zoejoe, s.code nhiều nhé
zoejoe
viết 02:16 ngày 10/10/2018
Được gửi bởi sacroyant
Bài liên quan