如何使用PHP/Zend Framework1将数据库结果提取为流

如何使用PHP/Zend Framework1将数据库结果提取为流,php,zend-framework,stream,Php,Zend Framework,Stream,我正在编写一个CSV文件,其中包含一个函数的结果,该函数以数组形式返回数据库查询结果,如果结果集很大,则从异常中获取内存 因此,我正在寻找使用streams编写CSV的方法,有谁能帮助我如何使用PHP或Zend Framework-1实现这一点。您必须更改函数才能返回语句,而不是完整的结果。您可以使用fetch方法获取每行的数据库结果,并使用fputcsv写入csv文件 $fp = fopen('file.csv', 'w'); $stmt = $db->query('SELECT * F

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


因此,我正在寻找使用streams编写CSV的方法,有谁能帮助我如何使用PHP或Zend Framework-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);

请添加函数的代码。