我尝试从数据库加载10 000个结果并重新处理数据。对于每一行,我想创建一个具有此行值的其他对象。
例如:
数据来自我无法修改的环境here。
完成一个对象(dValue
列)
New Object('42373', 0, 0, 0, 3, 0)
请求在DQL中,它返回$requete->iterate() in $liste
。
对于读取数据:
$this->infosCommande = $this->emChacal->getRepository('XXX:YYY');
$compteur = 0;
while (($row = $liste->next()) !== false) {
...few verifications...
$object= new customObject();
$nouvelleCommande->setValue($row[$i]['value']);
$listeExtraction[$compteur] = $nouvelleCommande;
$this->emChacal->detach($this->infosCommande);
$compteur++;
...few verifications...
}
当我尝试阅读结果时,出现错误消息"Error: Allowed memory size of 134217728 bytes exhausted"
。
如何使用DQL重写大数据结果?