php如何判断url是否是重定向
在PHP中,可使用`curl`扩大库来判断URL是否是重定向。下面是一个简单的示例:
```php
function isRedirected($url) {
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
curl_exec($ch);
$redirected = (curl_getinfo($ch, CURLINFO_HTTP_CODE) == 301 || curl_getinfo($ch, CURLINFO_HTTP_CODE) == 302);
curl_close($ch);
return $redirected;
}
// 判断URL是否是重定向
$url = "https://example.com";
if (isRedirected($url)) {
echo "URL已重定向";
} else {
echo "URL未重定向";
}
```
在这个示例中,我们使用`curl_init()`函数创建一个curl会话,并使用`curl_setopt()`函数设置一些选项。其中,`CURLOPT_RETURNTRANSFER`选项用于设置是否是返回响应的内容,`CURLOPT_FOLLOWLOCATION`选项用于设置是否是跟随重定向。然后,使用`curl_exec()`函数履行要求,通过`curl_getinfo()`函数获得响应的HTTP状态码,并判断是否是为301或302,如果是则表示URL已重定向。最后,使用`curl_close()`函数关闭会话,并返回结果。
请注意,使用`curl`扩大库需要确保服务器上已安装了该扩大库。如果没有安装,可以参考相关文档进行安装。
TOP