私は2つのフラッシュ/エアアプリケーションのための本当のシンプルな "バックエンド"(PHP5)を作っています。そのうちの1人は写真をアップロードし、バックエンドはそれをフォルダに保存し、2番目のアプリは新しい写真をバックエンドにポーリングして表示します。完成したファイルのみを取り込みます
私はデータベースにアクセスできないため、バックエンドは純粋なPHP5でなければなりません。そのため、イメージをフォルダに保存し(名前にタイムスタンプを付けて)、readdir()を使用してイメージを取り戻すことにしました。
これはすべて魅力のように機能します。それにもかかわらず、私は本当にバックエンドが写真が完全にアップロードされただけを返すようにして、2番目のアプリが未完成の画像をロードしようとしないようにしたいと思います。ファイルを検証するために使用できるメソッド/トリックはありますか?
ファイルが完全に書き込まれるようにする方法の1つは、アップロードプロセスがその習慣に従うと、 'flock(..、LOCK_EX | LOCK_NB)'でそれをポーリングすることです。 – mario