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


Posted in PHP onJuly 11, 2013

1、使用file_get_contents()

<?php
$file = file_get_contents($url);
echo strlen($file);
?>

2. 使用get_headers()
<?php
$header_array = get_headers($url, true);
$size = $header_array['Content-Length'];
echo $size;
?>

PS:
需要打开allow_url_fopen!
如未打开会显示
Warning: get_headers() [function.get-headers]: URL file-access is disabled in the server configuration
3.使用fsockopen()
<?php
 function get_file_size($url) {
     $url = parse_url($url);     if (empty($url['host'])) {
         return false;
     }
     $url['port'] = empty($url['post']) ? 80 : $url['post'];
     $url['path'] = empty($url['path']) ? '/' : $url['path'];
     $fp = fsockopen($url['host'], $url['port'], $error);
     if($fp) {
         fputs($fp, "GET " . $url['path'] . " HTTP/1.1\r\n");
         fputs($fp, "Host:" . $url['host']. "\r\n\r\n");
         while (!feof($fp)) {
             $str = fgets($fp);
             if (trim($str) == '') {
                 break;
             }elseif(preg_match('/Content-Length:(.*)/si', $str, $arr)) {
                 return trim($arr[1]);
             }
         }
         fclose ( $fp);
         return false;
     }else {
         return false;
     }
 }
 ?>
PHP 相关文章推荐
IIS php环境配置PHP5 MySQL5 ZendOptimizer phpmyadmin安装与配置
Nov 18 PHP
php 学习资料零碎东西
Dec 04 PHP
PHP MySQL应用中使用XOR运算加密算法分享
Aug 28 PHP
php引用传值实例详解学习
Nov 06 PHP
php解析url的三个示例
Jan 20 PHP
php绘图中显示不出图片的原因及解决
Mar 05 PHP
php使用array_rand()函数从数组中随机选择一个或多个元素
Apr 28 PHP
PHP中使用SimpleXML检查XML文件结构实例
Jan 07 PHP
php文件上传简单实现方法
Jan 24 PHP
php建立Ftp连接的方法
Mar 07 PHP
PHP读取word文档的方法分析【基于COM组件】
Aug 01 PHP
Laravel框架模板继承操作示例
Jun 11 PHP
深入Nginx + PHP 缓存详解
Jul 11 #PHP
基于PHP中的常用函数回顾
Jul 11 #PHP
PHP 获取文件权限函数介绍
Jul 11 #PHP
浅析php学习的路线图
Jul 10 #PHP
php对图像的各种处理函数代码小结
Jul 08 #PHP
php/js获取客户端mac地址的实现代码
Jul 08 #PHP
关于PHP语言构造器介绍
Jul 08 #PHP
You might like
PHP中设置时区方法小结
2012/06/03 PHP
JQuery 文本框使用小结
2010/05/22 Javascript
JS操作图片(增,删,改) 例子
2013/04/17 Javascript
js 判断js函数、变量是否存在的简单示例代码
2014/03/04 Javascript
jquery delay()介绍及使用指南
2014/09/02 Javascript
JS常用函数使用指南
2014/11/23 Javascript
js获取checkbox值的方法
2015/01/28 Javascript
JS显示表格内指定行html代码的方法
2015/03/31 Javascript
AngularJS入门心得之directive和controller通信过程
2016/01/25 Javascript
JavaScript实现iframe自动高度调整和不同主域名跨域
2016/02/27 Javascript
快速掌握Node.js模块封装及使用
2016/03/21 Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
2016/05/31 Javascript
jQuery Chart图表制作组件Highcharts用法详解
2016/06/01 Javascript
Jquery组件easyUi实现手风琴(折叠面板)示例
2016/08/23 Javascript
实例详解JSON取值(key是中文或者数字)方式
2017/08/24 Javascript
Angular 容器部署的方法
2018/04/17 Javascript
echarts实现词云自定义形状的示例代码
2019/02/20 Javascript
Python 抓取动态网页内容方案详解
2014/12/25 Python
qpython3 读取安卓lastpass Cookies
2016/06/19 Python
Python+OpenCV实现车牌字符分割和识别
2018/03/31 Python
详解Appium+Python之生成html测试报告
2019/01/04 Python
python如何使用jt400.jar包代码实例
2019/12/20 Python
Python的对象传递与Copy函数使用详解
2019/12/26 Python
Python小白垃圾回收机制入门
2020/06/09 Python
Python多分支if语句的使用
2020/09/03 Python
python3爬虫中引用Queue的实例讲解
2020/11/24 Python
Flask处理Web表单的实现方法
2021/01/31 Python
CSS3结构性伪类选择器九种写法
2012/04/18 HTML / CSS
一款恶搞头像特效的制作过程 利用css3和jquery
2014/11/21 HTML / CSS
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
中文系学生自荐信范文
2013/11/13 职场文书
技术总监岗位职责
2013/12/05 职场文书
《小动物过冬》教学反思
2014/04/17 职场文书
群众路线个人对照检查材料2014
2014/09/26 职场文书
2014乡镇班子个人对照检查材料思想汇报
2014/09/26 职场文书
httpclient调用远程接口的方法
2022/08/14 Java/Android