0
在MongoDB中使用forEach是否有效,PHP的问题是能够为结果数组中的每个元素添加一个新行到CSV文件。可能的解决方案的一个是使用for each mongodb PHP
$数据是蒙戈光标
$records = iterator_to_array($data);
$file = fopen("contacts.csv","w");
foreach ($records as $record){
fputcsv($file,$record);
}
但是,整个数据加载到内存中没有一个可扩展选项,我的问题,因为数据可以是巨大的。有什么更好的选择通过某种方式能够使用forEach。如何使用的forEach与蒙戈PHP
如果'$ data'是实现'Iterator'接口的对象,则可以直接在'$ data'上使用'foreach'。没有必要将其转换为简单的数组。 http://php.net/manual/en/class.iterator.php –
需要在mongo db中使用forEach –
我知道'$ data'是mongodb游标。你可以简单地'foreach($ data as $ record)'来迭代它。它不需要在这个阶段是一个数组,但是你可以在循环内部调用'iterator_to_array($ record)'来与'fputcsv()'一起使用,并且避免把它全部加载到内存中。 –