Php URL的_file()函数是否等效?

Php URL的_file()函数是否等效?,php,Php,检查给定url是否指向有效文件(即不返回404/301/等)的最佳方法是什么?我有一个脚本可以在页面上加载某些.js文件,但我需要一种方法来验证它接收到的每个指向有效文件的URL 我仍然在翻阅PHP手册,看看哪些文件函数(如果有的话)将实际用于远程URL。当我找到更多细节时,我会编辑我的帖子,但是如果有人已经这样做了,请随意插话。其中一种方法是请求url并获得一个状态代码为200的回复,除此之外,没有什么好办法,因为服务器可以选择如何处理请求(包括为存在的文件提供其他状态代码,但由于多种原因您无

检查给定url是否指向有效文件(即不返回404/301/等)的最佳方法是什么?我有一个脚本可以在页面上加载某些.js文件,但我需要一种方法来验证它接收到的每个指向有效文件的URL


我仍然在翻阅PHP手册,看看哪些文件函数(如果有的话)将实际用于远程URL。当我找到更多细节时,我会编辑我的帖子,但是如果有人已经这样做了,请随意插话。

其中一种方法是请求url并获得一个状态代码为200的回复,除此之外,没有什么好办法,因为服务器可以选择如何处理请求(包括为存在的文件提供其他状态代码,但由于多种原因您无法访问这些文件)。

如果您的服务器未启用fopen wrappers(任何具有良好安全性的服务器都不会启用),然后您必须使用。

文件的内容有点超出了目的,因为有HTTP头就足以做出决定,因此您需要使用curl来执行此操作:

<?php
// create a new cURL resource
$ch = curl_init();

// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_NOBODY, 1);

// grab URL and pass it to the browser
curl_exec($ch);

// close cURL resource, and free up system resources
curl_close($ch);
?>