PHP内存耗尽

标签 php memory file-upload

为什么我得到......的任何想法

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to

allocate 9792 bytes) in /home/frich/public_html/creation/systemc/sMain/upload_image.php on line 77

在下一行

$oldImage = imagecreatefromjpeg($img);

php 从 HTML 表单中获取图像并调整其大小。

如果它是一个小文件,则工作得很好。 IE。几百KB

尝试使用更大的文件,因为我想要最大 4mb。 我得到错误的图像是 ca。 2mb

提前致谢

最佳答案

你遇到了错误

""""""""""""""""""""""""
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to

allocate 9792 bytes) in /home/frich/public_html/creation/systemc/sMain/upload_image.php on line 77
""""""""""""""""""""""""

它表明您正在使用共享主机,因为您的服务器 memory_limit 是 32 MB

你需要像上面“Pekka”和“MartyIX”所说的那样增加你的内存限制

但是您可以通过三种方式做到这一点。

1st.要求您的托管公司增加您的内存限制,

他们会将其增加到最大 48MB,这是任何托管公司对剪切托管帐户的限制。

2nd.上传一个php.ini文件

写着“memory_limit = 100M and max_memory = 100M”

您可以将 100M 更改为您想要的任何大小,但可以限制在一定范围内,这样它就不会使用额外的服务器资源,否则您的帐户可能会被您的托管公司暂停

限制:此选项可能无法在每个主机上正常工作,因为有时此代码可能会被管理员阻止,因此服务器资源可能会消耗 LIMIT。

第 3 上传“.htaccess”

里面写着“php_value memory_limit 32M”

默认情况下,它在您的托管 Web 目录中可用,然后您可以先下载它,因为它也有其他设置。 下载下来用记事本打开,写上“php_value memory_limit 32M”

第 4 选项在您的页面中添加 PHP 代码

"ini_set('内存限制'​​, '32M');"(我还没有测试过,希望它能正常工作)

感谢和问候.........

关于PHP内存耗尽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3534274/

相关文章:

javascript - 日历未显示在我的自定义 magento2 主题中,但以亮度显示(默认)

php - 在 PHP 中使用多个表单时,插入值不会输入到数据库中

php - 类型安全的语言是否需要静态类型?

javascript - jQuery:点击div后打开文件上传窗口

android - 如何将文件附加到 Android 中的帖子 url

php - 使用 jquery ajax 将 JSON 发送到 PHP

c - C中的内存计算

java - 从哪个 Linux 内核/libc 版本开始,Java Runtime.exec() 就内存而言是安全的?

c - 使用指针写入内存

java - 谷歌驱动器文件的文件路径为空