• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php怎么通过一个Url获得文件类型(后缀名)?

php 搞代码 3年前 (2022-01-25) 30次浏览 已收录 0个评论
文章目录[隐藏]

网上找的方法都是知道文件后缀名的情况下~
我现在的情况是只知道Url,比如http://site.com/photo,这是一个文件,但是没有把文件类型和后缀在上面表示出来,我接收到之后怎么用Php把他后缀或者文件类型获取到?

好吧,我是做微信的时候用户发过来的图片腾讯只给了我一个这样的url

回复内容:

网上找的方法都是知道文件后缀名的情况下~
我现在的情况是只知道Url,比如http://site.com/photo,这是一个文件,但是没有把文件类型和后缀在上面表示出来,我接收到之后怎么用Php把他后缀或者文件类型获取到?

好吧,我是做微信的时候用户发过来的图片腾讯只给了我一个这样的url

<body>

http://php.net/manual/en/function.finfo-buffer.php

大家写的代码很不高效呀

<code><?phpecho `curl -Is 'http://s11.sinaimg.cn/mw690/e0571d75tx6Co4vJcUOfa&690' |grep "Content-Type:"`;</code>

http://stackoverflow.com/questions/2610713/get-mime-type-of-external-file-using-curl-and-php

你应该通过 HTTP 头部里面的 Content-Type 来判断数据类型。

CodeIgniter 提供了一份比较完整的 Content-Type(即 MIME Type)和扩展名的对应表,你可以参考一下。

https://github.com/bcit-ci/CodeIgniter/blob/master/application/config/mimes.php

来@源gao*daima.com搞@代#码网搞gaodaima代码

heheheh 玻璃心犯了

高端逼们,玩好不送!!

<code>function online_filetype($url) {    if (function_exists('curl_init'))    {        $ch = curl_init();        curl_setopt($ch, CURLOPT_URL, $url);        curl_setopt($ch, CURLOPT_HEADER, 1);        curl_setopt($ch, CURLOPT_NOBODY, 1);        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);        $results = explode("\n", trim(curl_exec($ch)));        foreach($results as $line) {                if (strtok($line, ':') == 'Content-Type') {                        $parts = explode(":", $line);                        return trim($parts[1]);                }        }    }else    {        $url = parse_url($url);        if ($fp = @fsockopen($url['host'], empty($url['port']) ? 80 : $url['port'], $error)) {            fputs($fp, "GET " . (empty($url['path']) ? '/' : $url['path']) . " HTTP/1.1\r\n");            fputs($fp, "Host: {$url['host']}\r\n\r\n");            while (!feof($fp)) {                $tmp = fgets($fp);                if (trim($tmp) == '') {                    break;                } else if (preg_match('/Content-Type:(.*)/si', $tmp, $arr)) {                    return trim((string)$arr[1]);                }            }            return null;        } else {            return null;        }    }    return null;}</code>

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php怎么通过一个Url获得文件类型(后缀名)?

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址