ページのリストからhtmlを取得するこの関数があり、2時間ほど実行すると、スクリプトが中断し、メモリ制限を超えたことを示します。うまくいけば、いくつかの変数をnullに設定/設定解除しようとしましたメモリを解放しますが、同じ問題です。次のコードを見てください。:
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
if ($proxystatus == 'on'){
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE);
curl_setopt($ch, CURLOPT_PROXY, $proxy);
}
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_URL, $site);
ob_start();
return curl_exec($ch); // the line the script interrupts because of memory
ob_end_clean();
curl_close($ch);
ob_flush();
$site = null;
$ch = null;
}
どんな提案でも大歓迎です。メモリ制限を 128M に設定しましたが、それを増やす前に (私には最適なオプションとは思えません)、スクリプトの実行中にメモリの使用量を減らしたりメモリを解放したりするためにできることがあるかどうかを知りたいです。
ありがとうございました。