有时PHP致命错误 - 实时站点不是本地主机

时间:2015-02-02 20:07:06

标签: php pdo

好的,我已经搜索并尝试了一切。我的网站在localhost上工作得很好,我上传了,并且疯狂地遇到致命服务器问题。我已将其缩小到以下代码。这个代码在某些页面上工作的奇怪部分和其他页面没有(相同的代码!)。

$stmt_RcdleagueinfoMENU= $eleaguehome->prepare("SELECT * FROM league WHERE leaguename = :league");
$stmt_RcdleagueinfoMENU->bindValue(':league', $curleague, PDO::PARAM_STR);
$stmt_RcdleagueinfoMENU->execute();
$row_RcdleagueinfoMENU = $stmt_RcdleagueinfoMENU->fetch(PDO::FETCH_ASSOC);

我得到PHP致命错误:允许的内存大小为33554432字节耗尽....

1 个答案:

答案 0 :(得分:0)

ini_set('memory_limit' '-1')

PHP有一个“内存限制”设置,当你执行$ stmt_RcdleagueinfoMENU-> fetch(PDO :: FETCH_ASSOC)时,你从数据库获得的数据太多了,你正在用尽你当前的限制,这个设置为ca 33.5MB(33554432字节)

ini_set('memory_limit' '-1')

=无限制

ini_set('memory_limit' '128M')

= 128兆字节,依此类推。请参阅手册中的“资源限制”部分http://php.net/manual/en/ini.core.php

..请注意,很多免费的php虚拟主机(如Byethost或000webhost,在我的头顶),不允许你更改此限制..如果你想确认你改变了设置,你可以这样做:

assert(ini_set('memory_limit','128M')!==false,'128 megabytes of memory is required');