【问题标题】:How to fetch database result as a stream using PHP/Zend Framework1如何使用 PHP/Zend Framework1 将数据库结果作为流获取
【发布时间】:2017-02-09 16:46:42
【问题描述】:

我正在编写一个 CSV 文件,其中包含一个函数的结果,该函数将数据库查询结果作为一个数组返回,如果结果集很大,我会从异常中获取内存。

所以我正在寻找使用流编写 CSV,任何人都可以帮助我如何使用 PHP 或 Zend Framework-1 来做到这一点。

【问题讨论】:

  • 请添加函数代码。

标签: php zend-framework stream


【解决方案1】:

你必须改变你的函数来返回一个语句,而不是完整的结果。您可以使用fetch 方法获取每行的数据库结果,并使用fputcsv 方法写入csv 文件。

$fp = fopen('file.csv', 'w');
$stmt = $db->query('SELECT * FROM table WHERE smth IS NOT NULL ORDER BY id DESC');

while ($row = $stmt->fetch()) {
    fputcsv($fp, $fields);
}

fclose($fp);

【讨论】:

    猜你喜欢
    • 2011-11-19
    • 1970-01-01
    • 2015-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-10
    • 1970-01-01
    相关资源
    最近更新 更多