php

位置:IT落伍者 >> php >> 浏览文章

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


发布日期:2022年12月07日
 
PHP 获取远程文件大小的3种解决方法
以下是对PHP中获取远程文件大小的种解决方法进行了详细的介绍需要的朋友参考下

使用file_get_contents()

复制代码 代码如下:
<?php
$file = file_get_contents($url);
echo strlen($file);
?>


使用get_headers()

复制代码 代码如下:
<?php
$header_array = get_headers($url true);
$size = $header_array[ContentLength];
echo $size;
?>


PS:
需要打开allow_url_fopen!
如未打开会显示
Warning: get_headers() [functiongetheaders]: URL fileaccess is disabled in the server configuration
使用fsockopen()

复制代码 代码如下:


<?php
function get_file_size($url) {
$url = parse_url($url);

if (empty($url[host])) {
return false;
}

$url[port] = empty($url[post]) ? : $url[post];
$url[path] = empty($url[path]) ? / : $url[path];

$fp = fsockopen($url[host] $url[port] $error);

if($fp) {
fputs($fp "GET " $url[path] " HTTP/rn");
fputs($fp "Host:" $url[host] "rnrn");

while (!feof($fp)) {
$str = fgets($fp);
if (trim($str) == ) {
break;
}elseif(preg_match(/ContentLength:(*)/si $str $arr)) {
return trim($arr[]);
}
}
fclose ( $fp);
return false;
}else {
return false;
}
}
?>

               

上一篇:PclZip让php轻松实现压缩与解压

下一篇:百度网盘文件直链PHP代码