これが私がしたことです。ファイルにアクセスできない場合、必ずしも「404 Not Found」とは限らないため、ヘッダーを取得することで起こりうる結果をより多くカバーしています。場合によっては、「Moved Permanently」、「Forbidden」、およびその他の可能なメッセージです。ただし、ファイルが存在し、アクセスできる場合は「 200 OK 」です。HTTP の部分は、その後に 1.1 または 1.0 を持つことができます。これが、すべての状況で信頼性を高めるために strpos を使用した理由です。
$file_headers = @get_headers( 'http://example.com/image.jpg' );
$is_the_file_accessable = true;
if( strpos( $file_headers[0], ' 200 OK' ) !== false ){
$is_the_file_accessable = false;
}
if( $is_the_file_accessable ){
// THE IMAGE CAN BE ACCESSED.
}
else
{
// THE IMAGE CANNOT BE ACCESSED.
}