ブラウザキャッシュを無視して画像を表示する方法

メモ。画像をアップロードするアプリケーションなんかで一度画像をアップロードしてimgタグを使って画像を表示したとします。その後、同じ名前で画像を入れ替えて再度imgタグで画像を表示するとブラウザのキャッシュに入れ替える前の画像が残っているため元の画像が表示されてしまいます。これを回避するためにはimgのsrcアトリビュートに指定する名前をユニークにすれば良いです。とはいえ画像自体の名前は同じなので、具体的にはその時の時刻をクエリとして与えてあげれば良いです。

$time = time();
echo "<img src=\"test.jpg?$time\" />"

time関数で現時刻をunixtimeで取得してそれを後ろにつけるだけです。以外に知らないとつまづいちゃうかも。