-1

以下のコードがありますが、間違った値を返しています

if(file_exists("https://strutmymutt.com/file/pic/pages/13822542191645543571_400.jpg"))
    {
        echo "yes";
    }
    else
    {
        echo "no";
    }

これについて何か助けはありますか?

サーバーに画像が存在する場合でも、「いいえ」が返されます

4

5 に答える 5

0

ファイルが存在するかどうかを確認するには、ファイル パスを指定する必要があります。URLではありません。ここを見てください:http://php.net/file_exists

i.e.: file_exists('/Users/test/Desktop/1.jpg');
于 2013-10-22T07:26:01.350 に答える
0

PHP マニュアルによるとfile_exists、ファイルまたはディレクトリへのパスを指定して、ファイルが存在するかどうかを確認します。

これは、確認する URL を提供することはできず、ローカル ファイル システム上の絶対または相対ファイル パスを提供することを意味します。特定の URL のファイルを確認したい場合は、そのページのコメントに何かがあります。関連するコードは次のとおりです。

$file = 'https://strutmymutt.com/file/pic/pages/13822542191645543571_400.jpg';
$file_headers = @get_headers($file);
if($file_headers[0] === 'HTTP/1.1 404 Not Found') {
    echo 'no';
} else {
    echo 'yes';
}
于 2013-10-22T07:26:04.493 に答える
0

file_exists は、URL ではなくローカル ファイルに使用されます。

于 2013-10-22T07:26:07.773 に答える
0

file_exists は、ローカル ファイルへのアクセスでのみ機能します。代わりに、この方法で実行してください...

$file = "file/pic/pages/13822542191645543571_400.jpg"; 
if(file_exists($file)) {
        echo "yes";
    }
    else {
        echo "no";
    }
于 2013-10-22T07:30:48.650 に答える
0

file_existsファイルがローカルに存在するかどうかのみをチェックします。

その画像が存在するかどうかを確認するには、関数を使用してサーバーからの応答を確認する必要があります。

ここでこの回答を確認してください。

于 2013-10-22T07:26:30.933 に答える