我有一个问题,我认为很容易解决,但结果比预期的要困难一些。
我正在一个网站上工作,有人可以为产品上传图片,它会即时调整它们的大小两次(500x500 和 150x150)。我试图保持纵横比,例如,如果我有 600x500 的图像,它将调整为 500x417 和 150x125。
我找到了(很多)执行此操作的代码,例如此类,但是我总是遇到内存问题。我认为该类在调整大小后不会卸载/销毁临时图像。
我让主机将我的内存限制从 32 升级到 64M,但是后来我的内存用完了。我也坚持使用 PHP 5.2.13,所以我没有垃圾收集器。
我的 PHP 相当新,所以对我来说类的工作方式非常陌生,否则我会尝试在需要的地方添加 imagedestroy() 函数。我摆弄了几个小时的链接课程,但没有成功。
任何人都可以:
- 指向一个魔术类的方向,该类在调整大小完成后保持纵横比以及卸载/销毁临时图像,以控制 RAM 使用?
-给我一些(非常需要!)指导我可以在哪里以及如何修改一个类(例如发布的类)以销毁临时图像。
- 告诉我,如果我要解决这个非常错误的问题?
哦,我曾经让 WideImage 类工作,它工作得很好,然后突然停止了。我花了几个小时试图修复它,但没有成功。
我的 PHP 安装有 GD,但没有 ImageMagick。
谢谢!