php如何在不知道扩展名的情况下从url获取图像

php如何在不知道扩展名的情况下从url获取图像,php,file-exists,Php,File Exists,我想从给定的url检索图像,我有文件名,但问题是扩展名未知。它可以是jpg、gif或png 我就是这样做的,但似乎不起作用: $extensions = array('jpg', 'png', 'gif'); foreach ($extensions as $ext) { if (file_exists('https://mytestimage.com/products/3c763dce-666b-4ba9-a05a-cca846391aea/thumb.' . $ext

我想从给定的url检索图像,我有文件名,但问题是扩展名未知。它可以是jpg、gif或png

我就是这样做的,但似乎不起作用:

$extensions = array('jpg', 'png', 'gif');
    foreach ($extensions as $ext) {
        if (file_exists('https://mytestimage.com/products/3c763dce-666b-4ba9-a05a-cca846391aea/thumb.' . $ext)) {
            echo 'Found filename.' . $ext;
            break;
        }
    }

有什么建议吗?

由于文件不在现场,请检查URL是否存在

$file = 'http://example.com/image.jpg';
$fileHeaders = @get_headers($file);
if( $fileHeaders[0]=='HTTP/1.1 404 Not Found')
{
    // File doesn't exist
}
else
{
    // File exists
}
您可以将此逻辑应用于不同扩展的循环


参考资料:&

你有什么反应吗?@JakobLeifhelm没什么奇怪的吗?哈哈,问题已经解决了,但你可以在这里找到你想要的:那么到底发生了什么?它不回显文件名等?这被错误地标记为重复。问题在于非现场图像,而不是现场图像。问题中的“副本”对此无效。谢谢,这为我指明了正确的方向!