• ベストアンサー

is_fileでファイルが存在していてもfalse

is_file関数を使って、多数のファイルの有無のチェックを行おうとしています。 ところが、実際に存在していてもfalseを返してきます。 同一サーバ内、別サーバー内も試してみましたが、結果は同じでした。 当然ですが、URLの間違いなどはありません。 まったく原因が思いつきません。 よろしくお願いします。 動作環境:windowsxp,php4.3.8

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

ファイルの有無は同一サーバ内だけだと思いますが。 別サーバに関しては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)がありました。 その時は、カレントディレクトリが違うということでした。 ファイル名にフルパスを使うと良いようです。

参考URL:
http://okweb.jp/kotaeru.php3?qid=1109184
muuuuu
質問者

お礼

回答ありがとうございます。 対象ファイルをhttp://~sample.gifのような感じで指定していたのがですが、駄目でした。 その後、PHPのマニュアルに「リモートファイルは使用できない」とありましたので、http://から始まるものは駄目なのかと考えています。 別サイトにあるファイルの有無となるとfopenでチェックするしかないのか? と思っているところです。 今回の目的は、ファイルをアップロードする前にrんんくしてあるGIF、JPEGなどがちゃんと存在するかをチェックしたいのです。 そのサイトはCGI,PHPが使用できないので、phpが使用できる別サイトからチェックをかけたいと思っています。

関連するQ&A