PHP获取短链接跳转后的真实地址和响应头信息的方法


Posted in PHP onJuly 25, 2014

获取到一个短连接,需要将短连接转换成真实的网址,通过查资料,发现 PHP 提供了一个函数 get_headers() ,可以完成这个任务,先把 头部信息获取到,然后再分析跳转地址即可:

$url = 'http://t.cn/h5mwx';

$headers = get_headers($url, TRUE);
print_r($headers);
//输出跳转到的网址

echo $headers['Location'];

附完整数组:

Array

(

    [0] => HTTP/1.1 302 Moved Temporarily

    [Location] => http://www.baidu.com

    [Content-Type] => Array

        (

            [0] => text/html;charset=UTF-8

            [1] => text/html;charset=utf-8

        )
    [Server] => Array

        (

            [0] => weibo

            [1] => BWS/1.0

        )
    [Content-Length] => Array

        (

            [0] => 203

            [1] => 16424

        )
    [Date] => Array

        (

            [0] => Thu, 12 Dec 2013 10:42:25 GMT

            [1] => Thu, 12 Dec 2013 10:42:25 GMT

        )
    [X-Varnish] => 2893360335

    [Age] => 0

    [Via] => 1.1 varnish

    [Connection] => Array

        (

            [0] => close

            [1] => Close

        )

)

附:get_headers函数官方文档

get_headers — 取得服务器响应一个 HTTP 请求所发送的所有标头

说明

array get_headers ( string $url [, int $format = 0 ] )

get_headers() 返回一个数组,包含有服务器响应一个 HTTP 请求所发送的标头。

参数

url:目标 URL。

format:如果将可选的 format 参数设为 1,则 get_headers() 会解析相应的信息并设定数组的键名。

返回值

返回包含有服务器响应一个 HTTP 请求所发送标头的索引或关联数组,如果失败则返回 FALSE。

使用例子:

<?php

$url = 'http://www.example.com';
print_r(get_headers($url));
print_r(get_headers($url, 1));

?>

以上例程的输出类似于:
Array

(

    [0] => HTTP/1.1 200 OK

    [1] => Date: Sat, 29 May 2004 12:28:13 GMT

    [2] => Server: Apache/1.3.27 (Unix)  (Red-Hat/Linux)

    [3] => Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT

    [4] => ETag: "3f80f-1b6-3e1cb03b"

    [5] => Accept-Ranges: bytes

    [6] => Content-Length: 438

    [7] => Connection: close

    [8] => Content-Type: text/html

)
Array

(

    [0] => HTTP/1.1 200 OK

    [Date] => Sat, 29 May 2004 12:28:14 GMT

    [Server] => Apache/1.3.27 (Unix)  (Red-Hat/Linux)

    [Last-Modified] => Wed, 08 Jan 2003 23:11:55 GMT

    [ETag] => "3f80f-1b6-3e1cb03b"

    [Accept-Ranges] => bytes

    [Content-Length] => 438

    [Connection] => close

    [Content-Type] => text/html

)
PHP 相关文章推荐
用PHP来写记数器(详细介绍)
Oct 09 PHP
php实现mysql同步的实现方法
Oct 21 PHP
Apache下禁止php文件被直接访问的解决方案
Apr 25 PHP
解析ajax事件的调用顺序
Jun 17 PHP
解析PHP工厂模式的好处
Jun 18 PHP
PHP中常用的转义函数
Feb 28 PHP
destoon复制新模块的方法
Jun 21 PHP
在Linux系统的服务器上隐藏PHP版本号的方法
Jun 06 PHP
PHP制作登录异常ip检测功能的实例代码
Nov 16 PHP
php实时倒计时功能实现方法详解
Feb 27 PHP
php curl上传、下载、https登陆实现代码
Jul 23 PHP
php实现的rc4加密解密类定义与用法示例
Aug 16 PHP
PHP实现根据设备类型自动跳转相应页面的方法
Jul 24 #PHP
PHP结合JQueryJcrop实现图片裁切实例详解
Jul 24 #PHP
PHP 5.3新增魔术方法__invoke概述
Jul 23 #PHP
php实现与erlang的二进制通讯实例解析
Jul 23 #PHP
PHP使用CURL实现对带有验证码的网站进行模拟登录的方法
Jul 23 #PHP
Yii使用CLinkPager分页实例详解
Jul 23 #PHP
ThinkPHP单字母函数(快捷方法)使用总结
Jul 23 #PHP
You might like
Ajax PHP 边学边练 之三 数据库
2009/11/26 PHP
PHP 作用域解析运算符(::)
2010/07/27 PHP
全局记录程序片段的运行时间 正确找到程序逻辑耗时多的断点
2011/01/06 PHP
zend framework多模块多布局配置
2011/02/26 PHP
如何用phpmyadmin设置mysql数据库用户的权限
2012/01/09 PHP
PHP程序员不应该忽略的3点
2015/10/09 PHP
PHP二维数组排序简单实现方法
2016/02/14 PHP
CL vs ForZe BO5 第三场 2.13
2021/03/10 DOTA
javascript之Partial Application学习
2013/01/10 Javascript
json数据的列循环示例
2013/09/06 Javascript
浅析hasOwnProperty方法的应用
2013/11/20 Javascript
JS获取计算机mac地址以及IP的实现方法
2014/01/08 Javascript
AngularJS入门教程之数据绑定原理详解
2016/11/02 Javascript
js实现简单的手风琴效果
2017/02/27 Javascript
bootstrap实现动态进度条效果
2017/03/08 Javascript
微信小程序 slider的简单实例
2017/04/19 Javascript
简化vuex的状态管理方案的方法
2018/06/02 Javascript
分享5个好用的javascript文件上传插件
2018/09/16 Javascript
JS栈stack类的实现与使用方法示例
2019/01/31 Javascript
express如何解决ajax跨域访问session失效问题详解
2019/06/20 Javascript
JavaScript 监听组合按键思路及代码实现
2020/07/28 Javascript
[03:51]吞吞映像 每周精彩击杀top10第二弹
2014/06/25 DOTA
使用BeautifulSoup爬虫程序获取百度搜索结果的标题和url示例
2014/01/19 Python
python使用any判断一个对象是否为空的方法
2014/11/19 Python
Linux-ubuntu16.04 Python3.5配置OpenCV3.2的方法
2018/04/02 Python
python实现多线程网页下载器
2018/04/15 Python
Python3爬取英雄联盟英雄皮肤大图实例代码
2018/11/14 Python
python 字符串追加实例
2019/07/20 Python
CSS3 简单又实用的5个属性
2010/03/04 HTML / CSS
举例详解HTML5中使用JSON格式提交表单
2015/06/16 HTML / CSS
英国排名第一的停车场运营商:NCP
2019/08/26 全球购物
俄罗斯在线服装店:STOLNIK
2021/03/07 全球购物
旅游安全协议书
2014/04/21 职场文书
图书馆标语
2014/06/19 职场文书
思品教学工作总结
2015/08/10 职场文书
Pyhton爬虫知识之正则表达式详解
2022/04/01 Python