我有一个 php 函数来从 blob 字段中获取所有图像。
如下:
$db_corp = new PDO ("firebird:dbname=DATA.FDB;host=localhost", "sysdba", "masterkey");
$query_corp1= "Select CODPROD, ,FOTO From PRODUCT";
$result_corp1 = $db_corp->prepare($query_corp1);
$result_corp1->execute();
$result_corp1->bindColumn(1, $corp1_CODPROD);
$result_corp1->bindColumn(9, $corp1_FOTO, PDO::PARAM_LOB);
while($result_corp1->fetch()){
if($corp1_FOTO){
file_put_contents($corp1_CODPROD.".png",$corp1_FOTO);
}
}
该脚本运行良好,几乎占据了数据库中一半的照片,但在此过程中出现以下错误。
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 480055 bytes)
我已经尝试过 gc_enable(); 和 gc_collect_cycles;我的数据库有 2100 个产品,但一半有图片,我需要将其提取到文件中。
提前致谢