如何解决PHP致命错误:允许的内存大小用尽怎么修?
|Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to
allocate 24 bytes)
in /home/fevsdiet/public_html/xxxxxxx.co.uk/booking/includes/functions.php
on line 481
这是什么意思,如何解决?
这是错误的代码:
$availabilityArr = array();
#TODO - check if \"to\" is < \"from\" = means that \"to\" is +1 day.
$st = date(\"Y-m-d H:i\",strtotime($date.\" +\".$tt[2].\" minutes\"));
$et = date(\"Y-m-d H:i\",strtotime($date.\" +\".$tt[3].\" minutes\"));
$a = $st;
$n = 0; //layout counter
$b = date(\"Y-m-d H:i\",strtotime($a.\" +\".$int.\" minutes\")); //default value for B is start time.
for( $a = $st ; $b <= $et ; $b =
date(\"Y-m-d H:i\",strtotime($a.\" +\".$int.\" minutes\")))
{
$availabilityArr[date(\"Y-m-d\",strtotime($a))][] = date(\"H:i\",strtotime($a));
$a = $b;
$n++;
}
解决方法
基本上,这意味着PHP没有剩余的允许内存。可以使用
php.ini
中的memory_limit
子句对此进行调整。
如果您使用共享主机,则可能无法编辑the3ѭ。您仍然可以尝试使用.htaccess
文件:
在Web目录的根目录(通常是/www
或/web
)上创建一个名为named5ѭ的文件
使用php_value
子句:
php_value memory_limit 128M #for example
这是由您的某些代码导致的,这些代码尝试使用太多或太大的变量。通常这是一个无限循环,或者是从数据库中将大量数据提取到一个数组中,
,这是PHP错误。
在.htaccess中,您可以设置
php_value memory_limit 90M
在您的php文件上,您可以设置
ini_set(\"memory_limit\",\"90M\");
,老实说,这听起来像是一个PHP错误。
看到这个:
http://www.bluehostforum.com/showthread.php?14500-Allowed-memory-size-of-33554432-bytes-exhausted
您需要在PHP中编辑memory_limit设置。
,您的内存不足,无法使用PHP。
http://www.lost-in-code.com/programming/php-code/php-increase-memory-limit/
,检查php.ini中的memory_limit
设置。
,您的PHP环境当前的内存限制为32MB,并且错误消息告诉您,它需要更多的内存才能继续。
内存限制由memory_limit配置选项设置(请参阅:http://uk3.php.net/manual/zh/ini.core.php#ini.memory-limit)。您需要重构代码以使用更少的内存,或者,如果您确实需要那么多的内存,请更改memory_limit选项。
要针对服务器上的所有php脚本全局执行此操作,可以编辑php.ini(这取决于您的操作系统和PHP的安装位置)。
要仅为此脚本设置临时的更高内存限制,可以执行以下操作:
$old_limit = ini_set( \"memory_limit\",\"128M\" );
(... the code that needs the extra memory ...)
ini_set( \"memory_limit\",$old_limit );
为了减少内存使用量,请尝试对不需要的任何变量使用unset()作为开始。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。