相关疑难解决方法(0)

确定URL是否是PHP中的图像的最佳方法

使用PHP,给定URL,我如何确定它是否是图像?

URL没有上下文 - 它只是在纯文本文件的中间,或者可能只是一个字符串.

我不希望高开销(例如,读取URL的内容),因为可以在页面上调用许多URL.鉴于这种限制,所有图像都不是必需的,但我想要一个相当不错的猜测.

目前我只是在查看文件扩展名,但感觉应该有比这更好的方法.

这是我目前拥有的:

  function isImage( $url )
  {
    $pos = strrpos( $url, ".");
    if ($pos === false)
      return false;
    $ext = strtolower(trim(substr( $url, $pos)));
    $imgExts = array(".gif", ".jpg", ".jpeg", ".png", ".tiff", ".tif"); // this is far from complete but that's always going to be the case...
    if ( in_array($ext, $imgExts) )
      return true;
    return false;
  }
Run Code Online (Sandbox Code Playgroud)

编辑:如果它对其他任何人有用,最后的功能是使用Emil H的答案:

  function isImage($url)
  {
     $params = array('http' => array(
                  'method' => 'HEAD'
               ));
     $ctx = stream_context_create($params);
     $fp = …
Run Code Online (Sandbox Code Playgroud)

php url image

53
推荐指数
5
解决办法
4万
查看次数

标签 统计

image ×1

php ×1

url ×1