Sc0undRel
@Sc0undRel

Почему PHP заливает пустые файлы на сервер?

Здравствуйте.
Мне написали парсер картинок со страницы. Почему-то последняя картинка иногда заливается на сервере пустая, то есть весит 0 kb. Подскажите, пожалуйста, как можно предотвратить заливку нулевых файлов?

Кажется за основную часть отвечает этот код:
foreach($array as $img)
						{
							$link = substr($img, 1);
							$name_in_array = explode("/", $link);
							$name = array_pop($name_in_array);
							$name_md = md5($link);
							$mylink = "http://";
							for($i=3;$i<=count($name_in_array);$i++){
									$mylink .= $name_in_array[$i-1] . "/";
							}
							$mylink .= urlencode($name);
							$file = file_get_contents($mylink);
							$fp = fopen($_SERVER['DOCUMENT_ROOT'] . "/uploads/posts/" . date('Y-m') . "/" . $name_md . ".jpg", "w");
							fwrite($fp, $file);
							fclose($fp);
							$links_to_images .=  date('Y-m') . "/" . $name_md . ".jpg|||";
						}
  • Вопрос задан
  • 161 просмотр
Решения вопроса 1
@Camaro67
Помог? - жми "Отметить решением"
Например, проверять данные которые в переменной $file, и если данных нет, то перезапрашивать.
А вообще, этот парсер скорее всего не долго проработает, его просто заблокируют. Для этих целей лучше использовать CURL, а не file_get_contents.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы