Кэш phpFlickr не обновляется при удалении фотографии

Я использую phpFlickr на своем веб-сайте, и выгрузка / удаление работает нормально, но когда я удаляю фотографию и / или удаляю фотографию из фотосета, кэш (с использованием опции файловой системы) отстает на несколько минут и все еще показывает тогда изображение

Если я отключаю кеш, он работает как положено. Есть ли способ вручную очистить кеш при выполнении удаления?

1 ответ

Решение

Решение удалить определенный набор flickr и все изображения, связанные с набором, из /path/to/phpFlickrCache каталог. Вам нужно будет предоставить $flickr_photoset_id и путь к файловой системе. Все остальные наборы и их изображения останутся в кеше.

$flickrset = exec("grep -l '" . $flickr_photoset_id . "' /path/to/phpFlickrCache/*.cache");

if ($f = fopen($flickrset, "r")) {
    $s = fgets($f, 24000);
    fclose($f);
    unlink($flickrset);

    preg_match_all("/\"id\";s:10:\"(\d+)\";/", $s, $images);

    // $images[1] contains matched images from (\d+)
    foreach ($images[1] as $img) {
        $i = exec("grep -l '" . $img . "' /path/to/phpFlickrCache/*.cache");
        unlink($i);
    }
}
Другие вопросы по тегам