以下实例我们使用php curl 来获取远程文件大小,返回文件大小单位为字节:
- <?php
- // 获取远程文件大小函数
- 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";
- }
-
- // 实例测试
- echo remote_filesize("https://www.cdsy.xyz/d/file/computer/programme/html_div_css/2022-02-13/2e41a242eba7796dbc88ca6fff66d0ae.png");
- ?>
以上实例输出结果为:
- 8416 字节