if (!function_exists('getUriLen')) { //判断方式是否存在
function getUriLen($uri) //方法:参数是图片地址
{
ob_start(); //打开缓冲区,不把内容输出到浏览器
$ch = curl_init($uri); //curl请求
curl_setopt($ch, CURLOPT_HEADER, 1); // 如果你想把一个头包含在输出中,设置这个选项为一个非零值。
curl_setopt($ch, CURLOPT_NOBODY, 1); //nobody是关键 如果你不想在输出中包含body部分,设置这个选项为一个非零值。
$okay = curl_exec($ch);
curl_close($ch);
$head = ob_get_contents(); //获取缓冲区的值
ob_end_clean(); //关闭缓冲区
$regex = '/Content-Length:\s+(\d+)/'; //正则匹配Content-Length:之后的数字
preg_match($regex, $head, $matches); //参数1匹配的字符串,参数2数据源,参数3匹配得到的结果
return $matches[1];
}
}
本文介绍了一个用于获取指定URL资源内容长度的PHP函数。该函数通过使用curl发起HTTP请求,并利用正则表达式从响应头部信息中抽取Content-Length字段来实现其功能。
1432

被折叠的 条评论
为什么被折叠?



