PHP 获取远程文件大小

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 获取远程文件大小相关的知识,希望对你有一定的参考价值。

function get_remote_file_size($url) {
   $parsed = parse_url($url);
   $host = $parsed["host"];
   $fp = @fsockopen($host, 80, $errno, $errstr, 20);
   if (!$fp) return false;
   else {
       @fputs($fp, "HEAD $url HTTP/1.1
");
       @fputs($fp, "HOST: $host
");
       @fputs($fp, "Connection: close

");
       $headers = "";
       while(!@feof($fp))$headers .= @fgets ($fp, 128);
   }
   @fclose ($fp);
   $return = false;
   $arr_headers = explode("\n", $headers);
   foreach ($arr_headers as $header) {
       $s = "Content-Length: ";
       if (substr(strtolower ($header), 0, strlen($s)) == strtolower($s)) {
           $return = trim(substr($header, strlen($s)));
           break;
       }
   }
   if ($return) {
              $size = round($return / 1024, 2);
              $sz = "KB"; // Size In KB
        if ($size > 1024) {
            $size = round($size / 1024, 2);
            $sz = "MB"; // Size in MB
        }
        $return = "$size $sz";
   }
   return $return;
}

以上是关于PHP 获取远程文件大小的主要内容,如果未能解决你的问题,请参考以下文章

PHP 获取远程文件大小

PHP 获取远程文件大小

PHP 获取远程文件大小的3种解决方法

PHP获取远程和本地文件信息(汇总)

PHP 获取远程图像,调整大小并保存

php怎么高效获取远程图片尺寸