如何用PHP查询远程文件的具体大小?
- 内容介绍
- 文章标签
- 相关推荐
本文共计133个文字,预计阅读时间需要1分钟。
phpfunction remote_filesize($url, $user=, $pw=) { ob_start(); $ch=curl_init($url); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_NOBODY, 1); if (!empty($user) && !empty($pw)) { $headers=array('Authorization: Basic ' . base64_encode($user . ':' . $pw)); } if (isset($headers)) { curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); } curl_exec($ch); $size=curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD); curl_close($ch); ob_end_clean(); return $size;}
function remote_filesize($url, $user = "", $pw = "")
{
ob_start();
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_NOBODY, 1);
if(!empty($user) && !empty($pw))
{
$headers = array('Authorization: Basic ' . base64_encode("$user:$pw"));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
}
$ok = curl_exec($ch);
curl_close($ch);
$head = ob_get_contents();
ob_end_clean();
$regex = '/Content-Length:\s([0-9].+?)\s/';
$count = preg_match($regex, $head, $matches);
return isset($matches[1]) ? $matches[1] : "unknown";
}
用法:
<?php $file = "koonk.com/images/logo.png"; $size = remote_filesize($url); echo $size; ?>
本文共计133个文字,预计阅读时间需要1分钟。
phpfunction remote_filesize($url, $user=, $pw=) { ob_start(); $ch=curl_init($url); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_NOBODY, 1); if (!empty($user) && !empty($pw)) { $headers=array('Authorization: Basic ' . base64_encode($user . ':' . $pw)); } if (isset($headers)) { curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); } curl_exec($ch); $size=curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD); curl_close($ch); ob_end_clean(); return $size;}
function remote_filesize($url, $user = "", $pw = "")
{
ob_start();
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_NOBODY, 1);
if(!empty($user) && !empty($pw))
{
$headers = array('Authorization: Basic ' . base64_encode("$user:$pw"));
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
}
$ok = curl_exec($ch);
curl_close($ch);
$head = ob_get_contents();
ob_end_clean();
$regex = '/Content-Length:\s([0-9].+?)\s/';
$count = preg_match($regex, $head, $matches);
return isset($matches[1]) ? $matches[1] : "unknown";
}
用法:
<?php $file = "koonk.com/images/logo.png"; $size = remote_filesize($url); echo $size; ?>

