php强制更新图片缓存的方法

本文实例讲述了php强制更新图片缓存的方法。分享给大家供大家参考。具体实现方法如下:

/** 強制更新圖片緩存 

*   @param Array $files 要更新的圖片 

*   @param int $version 版本 

*/  

function force_reload_file($files=array(), $version=0){  

    $html = '';  

    if(!isset($_COOKIE['force_reload_page_'.$version])){ // 判斷是否已更新過  

        setcookie('force_reload_page_'.$version, true, time()+2592000);  

        $html .= '<script type="text/javascript">'."\r\n";  

        $html .= 'window.onload = function(){'."\r\n";  

        $html .= 'setTimeout(function(){window.location.reload(true); },1000);'."\r\n";  

        $html .= '}'."\r\n";  

        $html .= '</script>';  

        echo $html;  

        exit();  

    }else{  // 讀取圖片一次,針對chrome優化  

        if($files){  

            $html .= '<script type="text/javascript">'."\r\n";  

            $html .= "<!--\r\n";  

            for($i=0,$max=count($files); $i<$max; $i++){  

                $html .= 'var force_reload_file_'.$i.' =new Image()'."\r\n";  

                $html .= 'force_reload_file_'.$i.'.src="'.$files[$i].'"'."\r\n";  

            }  

            $html .= "-->\r\n";  

            $html .= '</script>';  

        }  

    }  

    return $html;  

}  

  

// 调用方法  

$files = array(  

    'images/1.jpg',  

    'images/2.jpg',  

    'images/3.jpg',  

    'images/4.jpg'  

);  

$html = force_reload_file($files, 1);  

echo $html;

希望本文所述对大家的php程序设计有所帮助。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。