@fwrite 重複書き込みの問題
外部画像をサーバースペースにダウンロードするプログラムには次のセクションがありますが、最近問題が発見されました。つまり、トリガーされるたびに再度ダウンロードされ、前のファイルが上書きされます。 file_exists を追加しても機能しません。イメージが既にディレクトリに存在する場合にスキップされて実行されないように変更する方法がわかりません。
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> $t= ".jpg" $url= "http://....." $content=@file_get_contents($url); $path="/home/img/"; $filename=$path.$t; $fp=fopen($filename,"w+"); if (file_exists($filename)){ if (@fwrite($fp,$content)) //content的内容写入文件指针fp处 { @fclose($fp); return $filename; } else { @fclose($fp); return false; } }
// ファイルが既に存在するかどうかを確認する if(file_exists($file)) エコー「存在する」; それ以外 エコー「存在しません」; <br><font color="#e78608">------解決策------------------</font><br> $path="ディレクトリ名(__FILE__)./home/img/";