0

サーバー上に画像ファイルが存在するかどうかを確認しようとしています。他のサーバーでイメージ パスを取得しています。

私が試した以下のコードを確認してください。

$urlCheck = getimagesize($resultUF['destination']);

if (!is_array($urlCheck)) {
  $resultUF['destination'] = NULL;
}

ただし、以下の警告が表示されます

Warning: getimagesize(http://www.example.com/example.jpg) [function.getimagesize]: failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in

そうする方法はありますか?

ありがとう

4

6 に答える 6

3
$url = 'http://www.example.com/example.jpg)';
print_r(get_headers($url));

それは配列を与えるでしょう。これで、応答を確認して、画像が存在するかどうかを確認できます

于 2013-08-05T07:15:16.527 に答える
1

ファイルがサーバー上に定期的に存在するかどうかを確認する必要があります。次を使用する必要があります。

is_file .たとえば

$url="http://www.example.com/example.jpg";

if(is_file($url))
{
echo "file exists on server";
}
else
{
echo "file not exists on server ";
}
于 2013-08-05T07:18:04.187 に答える
0

使用できますfile_get_contents。これにより、php は を返すと同時に警告を発行しますfalse。ユーザー インターフェイスが混乱しないように、このような警告表示を処理する必要がある場合があります。

 if (file_get_contents($url) === false) {
       //image not foud
   }
于 2013-08-05T07:17:08.380 に答える
0

fopen関数を使用する

if (@fopen($resultUF['destination'], "r")) {
    echo "File Exist";
} else {
    echo "File Not exist";
}
于 2013-08-05T07:22:49.297 に答える