我正在尝试从包含该文件的网址中检索文件的信息。但是如何在将文件下载到我的服务器之前获取文件的信息。 我需要文件信息,如文件大小,文件类型等
我找到了验证和下载文件的代码,但是在将文件实际下载到服务器之前如何从中获取信息
<?php
function is_url_exist($url)
{
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_NOBODY, true);
curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if($code == 200)
{
$status = "true";
}
curl_close($ch);
if ( $status == true)
{
$name = "abc.png";
if (file_put_contents("uploads/$name", file_get_contents($url)))
echo "file uploaded";
else
echo "error check upload link";
}
}
$url = "http://theonlytutorials.com/wp-content/uploads/2015/06/blog-logo1.png";
echo is_url_exist($url);
?>
答案 0 :(得分:2)
为此,您可以查找站点标题,这些标题将告诉该文件的所有详细信息,即文件大小等。...
您可以通过
获取标头在php中完成此操作 fech标头的格式为get_headers($url)
或get_headers($url)
,并且如上一个答案中所示的代码是正确的
<?php
$url = "http://theonlytutorials.com/wp-content/uploads/2015/06/blog-logo1.png";
$headers = get_headers($url,1);
print_r($headers);
?>
这将为您提供array / json格式的数据,该数据将存储您所需的所有必需详细信息。
有关详细信息,您可以参考http://php.net/manual/en/function.get-headers.php
答案 1 :(得分:1)
您可以通过get_headers
功能获取远程文件的所有信息。请尝试以下代码来查找类型,内容长度等。
$url = "http://theonlytutorials.com/wp-content/uploads/2015/06/blog-logo1.png";
$headers = get_headers($url,1);
print_r($headers);
了解有关get_headers的更多信息,请点击http://php.net/manual/en/function.get-headers.php