У меня проблема с сохранением файла из ответа на запрос POST.
Я использую Google Charts API для создания диаграммы с помощью запроса POST. Затем я пытаюсь сохранить результат в виде изображения.
Я следую документации API, как описано здесь: http://code.google.com/apis/chart/docs/post_requests.html
Вот мой код:
$file = fopen($url, 'r', false, $context);
$file2 = fopen("test.png", 'w');
while (!feof($file)) {
$buffer = fgets($file, 8192);
fwrite($file2, $buffer);
}
fclose($file);
Сохраняет изображение частично, до 20 тыс. Или около того, оставляя нижнюю часть изображения несохраненной.
(правка) Вот рабочий код, использующий curl:
$handle = curl_init($url);
curl_setopt($handle, CURLOPT_POST, true);
curl_setopt($handle, CURLOPT_FILE, $file);
curl_setopt($handle,CURLOPT_POST,count($request));
curl_setopt($handle, CURLOPT_POSTFIELDS, $request_string);
$data = curl_exec($handle);