【发布时间】:2014-02-05 16:00:30
【问题描述】:
我有一个 PHP 页面,它有一个搜索框,可以从一个相当大的数据库中搜索媒体。我已经做到了,如果您只输入前 3 个字符(例如 V75),则会显示所有 V75 磁带(V75000、V75001 等)。但是,当我只搜索 V7 时,它给了我这个错误:
Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 47 bytes) on line 68
$query->execute(); // LINE 66
$result = $query->fetchAll(PDO::FETCH_ASSOC); // LINE 68
}catch (Exception $e) // LINE 69
{
die('Cant fetch rows.'); // LINE 70
我想知道我必须更改什么才能让它也显示 V7 磁带?
“V7”磁带的大约数量是 255000
【问题讨论】:
-
V7 磁带的大概数量是多少?
-
@YourCommonSense 当我在 SQL Server Management Studio 中运行它时,它显示接近 255000 个条目。
-
那么在您看来,将 255k 条目拉入 PHP 数组然后在搜索框中呈现它是完全没问题的? :)
-
改用
fetch,逐行处理。 -
@BartFriederichs 真的吗?