使用php获取另一个域上的js文件的文件大小
如何获取另一个网站上的js文件的文件大小。我正在尝试创建一个监视器来检查 js 文件是否存在并且它是否超过 0 字节。
例如,在 bar.com 上我将有以下代码:
$filename = 'http://www.foo.com/foo.js';
echo $filename . ': ' . filesize($filename) . ' bytes';
How do I get the filesize of js file on another website. I am trying to create a monitor to check that a js file exists and that it is more the 0 bytes.
For example on bar.com I would have the following code:
$filename = 'http://www.foo.com/foo.js';
echo $filename . ': ' . filesize($filename) . ' bytes';
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您可以使用 HTTP HEAD 请求。
注意:这不是真正的 HEAD 请求,而是 PHP 解析其 Content-Length 的 GET 请求。不幸的是,PHP 函数名称非常具有误导性。这对于小型 js 文件可能就足够了,但对于较大的文件大小,请使用带有 Curl 的真正 HTTP Head 请求,因为这样服务器就不必上传整个文件而只需发送标头。
对于这种情况,请使用 Jakub 提供的代码。
You can use a HTTP HEAD request.
Notice: this is not a real HEAD request, but a GET request that PHP parses for its Content-Length. Unfortunately the PHP function name is quite misleading. This might be sufficient for small js files, but use a real HTTP Head request with Curl for bigger file sizes because then the server won't have to upload the whole file and only send the headers.
For that case, use the code provided by Jakub.
只需使用 CURL,这里列出了一个非常好的示例:
参考: http://www.php。净/手册/en/function.filesize.php#92462
Just use CURL, here is a perfectly good example listed:
Ref: http://www.php.net/manual/en/function.filesize.php#92462
另一个解决方案。 http://www.php.net/manual/en/function.filesize .php#90913
Another solution. http://www.php.net/manual/en/function.filesize.php#90913
这只是一个两步过程:
就是这样!
以下是在 PHP 中执行此操作的方法
注意:您可以按照 Uku 的建议使用 HTTP Head,但是如果您正在寻找页面内容,如果 js 文件有内容,那么您将不得不再次抓取:(
This is just a two step process:
thats it!!
Here is how you can do it in PHP
Note: You can use HTTP Head as suggested by Uku but then if you are seeking for the page content if js file has content then you would have to crawl again :(