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程序设计有所帮助。