1

像文件上传有

<?php
$_FILES['file']['tmp_name'];
$_FILES['file']['name'];
$_FILES['file']['size'];
$_FILES['file']['type'];
?>

现在。我有一个文件位于我的其他 Web 服务器上,我想通过 url 获取该文件的名称大小和 mime 类型。这可能吗?

我已经尝试在下面使用此代码。但它不起作用

    $url = "http://mydomain.com/myfile.rar";
    filesize ( $url );
    mime_content_type ( $url );
4

2 回答 2

6

您可以尝试原生 php 函数get_headers这是读取文件数据的非常快速的方法

于 2013-10-21T08:21:29.997 回答
0

你不能这样做。使用 $_FILES 时获得的信息是与文件一起发送的元信息(甚至可以在检索文件后计算大小)。

您无法像那样获得此信息,但您可以下载实际文件并检查标头信息以获取该信息。为此,请阅读 curl,它允许您向另一台服务器发出 HTTP 请求。

可能只请求 headers,因此您无需获取文件即可获取信息,这显然更有效。

另一种解决方案是在另一台服务器上实现一个文件信息脚本,该脚本允许您获取文件信息。所以你可以要求http://mydomain.com/fileinfo.php?file=myfile.rar. 在 fileinfo.php 中,您可以获得给定文件的所有文件信息并回显它。

于 2013-10-21T08:21:12.063 回答