php 获取文件大小的方法

php 可以获取长途文件的巨细,以及当地文件的巨细。那么详细该如何操纵呢,下面飞鸟慕鱼博客就来和各人说一说!

php get_header() 获取文件的巨细

get_headers():可以通过处事器的响应头来判定长途文件是否存在以及获取文件的一些根基信息,包罗文件范例,文件巨细等

关于 get_headers() 具体信息,可参考:https://www.feiniaomy.com/post/314.html

php代码:

<?php $url = 'https://oss.feiniaomy.com/zhutichajian/theme_vip.jpg'; $res = get_headers($url,true);    print_r($res);   //四舍五入获取将文件巨细的单元转换成 MB $filesize = round($res['Content-Length']/1024/1024,2); echo '文件巨细为:'.$filesize.' MB'; ?>

代码执行功效:

//打印功效: Array (     [0] => HTTP/1.1 200 OK     [Server] => Tengine     [Content-Type] => image/jpeg     [Content-Length] => 175042 //这里暗示文件的巨细     [Connection] => close     [EagleId] => 1bdd1e1a15897737749167998e ) //最后输出功效 文件巨细为:0.17 MBphp filesize() 函数获取当地文件的巨细

filesize():函数可以返回指定文件的巨细,乐成则返回文件的字节数,失败返回 false 并生成一条 E_WARNING 级此外错误

示例:

<?php //这里的代码只是示例,实际应用,应留意判定 $size = filesize("text.txt");  //单元转成 KB,这里只是简朴的应用,详细的文件巨细单元转换要领,参考飞鸟慕鱼博客相关文章 echo round($size/1024,2).' KB'; ?>

留意:filesize(),只能获取当地文件巨细,不能获取长途文件巨细!

php file_get_contents()获取文件内容,strlen()获取内容巨细

php file_get_contents() 函数获取文件的内容,再操作 strlen() 获取文件的巨细

php代码:

<?php //先获取文件的内容,可以是远和文件,但不能是压缩包 $conts = file_get_contents("text.txt"); //输入内容的长度(单元为字节) echo strlen($conts); ?>php 利用 curl 获取文件的巨细

php curl 组件可以做许多的工作,虽然它也可以获取一个文件的巨细

php代码:

<?php $url = ''; echo getFileSize($url); //界说一个函数,利便挪用 function getFileSize($url){         ob_start();         $ch = curl_init($url);         curl_setopt($ch, CURLOPT_HEADER, 1);         curl_setopt($ch, CURLOPT_NOBODY, 1);          $okay = 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);         $size = isset($matches[1])?$matches[1]:'unknown';            return $size;    }  ?>

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/9739.html