Более быстрый способ проверить, изменился ли удаленный файл, чем md5_file ()

Я хочу проверить, изменился ли удаленный файл, прежде чем сохранять его на моем сервере.
Сначала я проверил, существует ли файл, прежде чем выполнять сравнение с использованием md5_file между удаленным файлом и локальным файлом, но это действительно медленно. Есть ли более быстрый способ проверить это?

$channelName = htmlspecialchars($_GET['channel'], ENT_QUOTES);

$json_array = json_decode(file_get_contents('http://api.hitbox.tv/media/live/'.strtolower($channelName)), true);
$getImage = $json_array['livestream'][0]['channel']['user_logo_small'];
$imageURL = "http://edge.vie.hitbox.tv/$getImage";
$imagePath = str_replace("/static/img/channel/", "", $getImage);
$ImageExtension = substr( strrchr($imagePath, '.'), 1);
$imageOutput = "images/$channelName.".$ImageExtension;

if (file_exists($imageOutput)) {

if (md5_file($imageURL) != md5_file($imageOutput)) {
file_put_contents($imageOutput, file_get_contents($imageURL));
}

} else {
file_put_contents($imageOutput, file_get_contents($imageURL));
}

Может быть, кто-то может мне помочь или привести меня в правильном направлении ^^

С уважением, Казуто

0

Решение

Я использовал функции Pack и Unpack, чтобы сделать что-то подобное. Преобразовал изображение и PDF-файл в двоичный файл, а не MD5. Я не уверен в производительности по сравнению с MD5, но на это стоит взглянуть.

http://php.net/manual/en/function.pack.php

http://php.net/manual/en/function.unpack.php

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]