アプリ版:「スタンプのみでお礼する」機能のリリースについて

file_exists関数を使っていますが、
指定した場所にファイルは存在するにもかかわらず、
Falseが戻ってきてしまいます。

WinXp
PHP5
の環境で、ローカルにて行っています。
ファイルはc:commoninit.ini
というファイルです。
同パスにinit.iniをおいているのですが。
なにか条件があるのでしょうか。
ご教授願います。

A 回答 (4件)

file_exists関数は、open_basedir外ではダメみたいですよ。


私もこの辺りで苦戦した経験があり、結局ルートディレクトリ外をopen_basedirに追加したら出来ましたから。
    • good
    • 0
この回答へのお礼

大変遅くなってしまい申し訳ありませんでした。
maenet1972さん
なるほど、open_basedir外はだめなんですね。
これですっきりしました!
ありがとうございました。

お礼日時:2008/07/29 11:15

No.1です。



WinVistaBussiness
XAMPP (basic package) version 1.6.4
+ Apache 2.2.6
+ MySQL 5.0.45
+ PHP 5.2.4 + PHP 4.4.7 + PEAR

で試してみましたが、問題ないですね。

こういう時に、意外とあるのは、思い込みでつづりが違っているのを見逃していたなんて事です。

残念ながら、これ以上は思いつきませんね。
    • good
    • 0
この回答へのお礼

fireさん

ありがとうございました。
つづり間違いはなかったのですが、maenet1972さんに
いただいたご回答で解決しました。

お礼が遅れてしまって済みませんでした。

お礼日時:2008/07/29 11:17

「C:のカレントフォルダ」は、貴方が予想しているフォルダとは違うフォルダを指しています。

この回答への補足

ご回答ありがとうございます。
質問の内容が誤表記になってしまっていました。
すみません。
現在、
$filename= "c:/common/init.ini";
と記述しており、
Cドライブのcommonフォルダの下にinit.iniを
おいてあるのですがFalseが戻ってきてしまっています・・。
ただ、その後いろいろいじってみると、
file_existsの戻り値を無視し、
$fp = fopen($filename, "r");
を記述してみると、正しくオープンされ、
ファイルの内容は取得できているのですが・・。
if(!$fp)でファイルのオープンチェックを行っているので、
ファイルがなければここでエラーになるのですが、
file_exists関数が正しく動作しないのが気になっています。

補足日時:2008/07/14 16:53
    • good
    • 0

c:の後に、/ はなしでしょうか?


だとしたら、PHPを動かしている所からの相対パスで見ていると
思いますよ。

あと、2重投稿になっているようなので、もうひとつは削除するほうが良いですね。

この回答への補足

ありがとうございます。
chie65536への回答にも書かせていただきました通りの現象が
起こってしまっています・・。

アドバイスをお願いいたします。

>あと、2重投稿になっているようなので、もうひとつは削除するほうが良いですね。

ご指摘ありがとうございます。修正いたします。

補足日時:2008/07/14 16:58
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!