0
我在我的網站上使用phpFlickr和上傳/刪除工作正常,但是當我刪除照片和/或從photoset刪除照片緩存(使用文件系統選項)滯後幾分鐘,仍然顯示當時刪除的圖像。phpFlickr緩存不更新當照片被刪除
如果我禁用緩存它按預期工作。執行刪除操作時是否有任何方法可以手動清除緩存?
我在我的網站上使用phpFlickr和上傳/刪除工作正常,但是當我刪除照片和/或從photoset刪除照片緩存(使用文件系統選項)滯後幾分鐘,仍然顯示當時刪除的圖像。phpFlickr緩存不更新當照片被刪除
如果我禁用緩存它按預期工作。執行刪除操作時是否有任何方法可以手動清除緩存?
從/path/to/phpFlickrCache
目錄中刪除特定flickr集合和與集合相關的所有圖像的解決方案。您需要提供$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);
}
}