检查外部文件的大小,php
Posted
技术标签:
【中文标题】检查外部文件的大小,php【英文标题】:Check size of external files, php 【发布时间】:2011-03-27 02:23:07 【问题描述】:我通过这段代码的 url 获取文件
file_get_contents($_POST['url'];
然后我对他们做点什么。
但我不想操作大文件,如何限制接收文件的大小?
如果文件大于 500kb,它应该会抛出错误。
【问题讨论】:
【参考方案1】:请参阅我的answer 这个问题。您需要具有 cURL 扩展名,您可以使用它向远程服务器发出HEAD
HTTP 请求。响应会告诉你文件有多大,然后你可以做出相应的决定。
您对这一行特别感兴趣:
$size = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
【讨论】:
curl_setopt($ch, CURLOPT_URL, $url), $url = post['url']? @Rooney:是的,这是您感兴趣的网址的占位符。【参考方案2】:同意@Jon
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_URL, $url); //specify the url
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$head = curl_exec($ch);
$size = curl_getinfo($ch,CURLINFO_CONTENT_LENGTH_DOWNLOAD);
if(<limit the $size>)
file_get_contents($url);
【讨论】:
以上是关于检查外部文件的大小,php的主要内容,如果未能解决你的问题,请参考以下文章