1

您好我Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 21944 bytes)在尝试使用 imagecreatefromstring 时出错

        $imageFile = imagecreatefromstring($image);
        if ($imageFile !== false) {
            $width = ImageSX($imageFile);
            $height = ImageSY($imageFile);
        }
        if ($this->isExifInstalled) {
            @$type = exif_imagetype($source);
            $mime = image_type_to_mime_type($type);
        }
        if ($mime === "application/octet-stream") {
            $mime = $this->image_file_type_from_binary($image);
        }
        if ($mime === "application/octet-stream") {
            $mime = $this->getMimeTypeFromUrl($source);
        }
        imagedestroy($imageFile);
4

1 回答 1

0

将内存限制从可用扩展到双倍完成了这项工作,但问题似乎出在“imagecreatefromstring”方法上,一定存在导致耗尽或错误错误的问题。

可以修改php.ini "memory_limit" 或者使用ini_set("memory_limit","512M");

ini_set 更可取,因为您可以使用它来识别将来的内存使用情况,更好地探索如何在不超出限制的情况下优化代码的原因。

于 2021-03-26T23:33:23.997 回答