我正在处理网络上没有文件扩展名的图片,如下所示:
https://static1.squarespace.com/static/52a74d9ae4b0253945d2aee9/t/52ed63b1e4b04368c021b921/1463088116168/?format=500w
这样的图片可以在例如使用squarespace制作的网站上找到,例如此演示:https://bedford-demo.squarespace.com/
我尝试使用PHP下载这些图像并将它们存储在我的服务器上。但是如何找出这些图像的实际网址?这是如何运作的?我怎么能告诉这个图像的文件类型?这个巫术是什么?
任何提示都表示赞赏!
答案 0 :(得分:3)
快速回答:
要查找任何网址返回的Content-Type
,请查看以下答案:
Get Content-Type of requested URL in PHP
为什么需要Content-Type
:
就像互联网上的每个网页都没有以.html
结尾的网址一样,图片也不需要在其网址中设置“扩展程序”。
确定浏览器是否将从网址中检索到的数据视为图片的内容是HTTP响应中的 Content-Type
标头。
您发布的网址会返回以下HTTP标头:
对于HTML文档,Content-Type
为text/html
。通过在浏览器中打开开发人员控制台的网络选项卡,可以在浏览时检查标题。寻找“响应标题”。
答案 1 :(得分:2)
您可以使用getimagesize
获取文件的mime类型:
<?php
$size = getimagesize("https://static1.squarespace.com/static/52a74d9ae4b0253945d2aee9".
"/t/52ed63b1e4b04368c021b921/1463088116168/?format=500w");
print_r($size["mime"]);
?>
打印:
image/jpeg