PHP 取302跳转后真实 URL 的两种方法
来源:互联网 发布:大数据培训骗局 编辑:程序博客网 时间:2024/05/18 01:58
- 第一种,CURL形式【感觉处理略慢,代码偏多】
$url = '将跳转的URL';$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $url);curl_setopt($ch, CURLOPT_VERBOSE, true);curl_setopt($ch, CURLOPT_HEADER, true);curl_setopt($ch, CURLOPT_NOBODY, true);curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_TIMEOUT, 20);curl_setopt($ch, CURLOPT_AUTOREFERER, true);curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);// $ret 返回跳转信息$ret = curl_exec($ch);// $info 以 array 形式返回跳转信息$info = curl_getinfo($ch);// 跳转后的 URL 信息$retURL = $info['url'];// 记得关闭curlcurl_close($ch);
- 第二种,使用 get_headers
(PHP 5, PHP 7)
get_headers — 取得服务器响应一个 HTTP 请求所发送的所有标头参数 值 url 必需。目标URL format 可选。如果为1,则解析相应的信息并设定数组键名。
参考资料:PHP: get_headers - 手册
$headers = get_headers('将跳转的URL');if ($headers && $headers['Location']){ echo $headers['Location'];}
由此可见,仅有一次 302 跳转的情况下,使用【方法2】会比【方法1】更高效。
0 1
- PHP 取302跳转后真实 URL 的两种方法
- php 获取301跳转后真实的url
- php获取跳转后的真实链接
- PHP实现URL地址跳转的几种方法代码
- PHP 取URL参数的方法汇总
- PHP 两种方法取时间段
- 网站改版后导致URL改变如何设置301跳转的几种方法
- Android Activity间的两种跳转方式、自我关闭方法、关闭后的结果处理
- 页面跳转两种方法的区别
- 视图间的两种跳转方法
- IOS界面跳转的两种方法
- Servlet跳转Jsp的两种方法
- Java获取客户端真实IP地址的两种方法
- Java获取客户端真实IP地址的两种方法
- Java获取客户端真实IP地址的两种方法
- Java获取客户端真实IP地址的两种方法
- Java获取客户端真实IP地址的两种方法
- Java获取客户端真实IP地址的两种方法
- POJ 3463 Sightseeing (最短路&次短路条数问题)
- UVA 11987 Almost Union-Find(并查集的删除)
- JAVA开发相关API任意门
- Unity Editor 编辑器扩展二 Inspector面板特殊属性
- android成长值,常用获取inflate的写法
- PHP 取302跳转后真实 URL 的两种方法
- HPUOJ1163: 大数A + B [字符串](水)
- 1101. Quick Sort (25)
- phxpaxos learn模块解析
- 浅谈java中udp服务器客户端实例
- HttpClient发送Get、Post请求简单实践
- Ubuntu 14.04 Web 程序开发(4)基于JQuery+Ajax+Json+Servlet实现PUT GET
- 原创:王者皮肤修改器--恶意代码分析手记
- Java 泛型