- ベストアンサー
is_fileでファイルが存在していてもfalse
is_file関数を使って、多数のファイルの有無のチェックを行おうとしています。 ところが、実際に存在していてもfalseを返してきます。 同一サーバ内、別サーバー内も試してみましたが、結果は同じでした。 当然ですが、URLの間違いなどはありません。 まったく原因が思いつきません。 よろしくお願いします。 動作環境:windowsxp,php4.3.8
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ファイルの有無は同一サーバ内だけだと思いますが。 別サーバに関してはis_fileではなく、違う方法を考えるべきです。 fopenならhttpやftpプロトコルも対応しているので出来そうです。 その他で可能性があるのは、FTP関数とかCURL関数あたりじゃないですかね。
その他の回答 (2)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
回答No.3
>別サイトにあるファイルの有無となるとfopenでチェックするしかないのか? @fopenを使うのがいいと思います。
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
回答No.1
以前に似たような現象のQ(http://okweb.jp/kotaeru.php3?qid=1109184)がありました。 その時は、カレントディレクトリが違うということでした。 ファイル名にフルパスを使うと良いようです。
お礼
回答ありがとうございます。 対象ファイルをhttp://~sample.gifのような感じで指定していたのがですが、駄目でした。 その後、PHPのマニュアルに「リモートファイルは使用できない」とありましたので、http://から始まるものは駄目なのかと考えています。 別サイトにあるファイルの有無となるとfopenでチェックするしかないのか? と思っているところです。 今回の目的は、ファイルをアップロードする前にrんんくしてあるGIF、JPEGなどがちゃんと存在するかをチェックしたいのです。 そのサイトはCGI,PHPが使用できないので、phpが使用できる別サイトからチェックをかけたいと思っています。