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中for循环语句的几种变型
Mar 16 PHP
php 安全过滤函数代码
May 07 PHP
PHP 通过Socket收发十六进制数据的实现代码
Aug 16 PHP
smarty简单分页的实现方法
Oct 27 PHP
ecshop后台编辑器替换成ueditor编辑器
Mar 03 PHP
php的闭包(Closure)匿名函数初探
Feb 14 PHP
PHP图片添加水印功能示例小结
Oct 03 PHP
PHP水印类,支持添加图片、文字、填充颜色区域的实现
Feb 04 PHP
php获取ajax的headers方法与内容实例
Dec 27 PHP
如何在PHP中使用数组
Jun 09 PHP
PHP替换Word中变量并导出PDF图片的实现方法
Nov 26 PHP
php TP5框架生成二维码链接
Apr 01 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
如何写php程序?
2006/12/08 PHP
PHP中is_dir()函数使用指南
2015/05/08 PHP
PHP5.2下preg_replace函数的问题
2015/05/08 PHP
PHP stream_context_create()函数的使用示例
2015/05/12 PHP
在phpstudy集成环境下的nginx服务器下配置url重写
2019/12/02 PHP
13 个JavaScript 性能提升技巧分享
2012/07/26 Javascript
javascript实现日期时间动态显示示例代码
2015/09/08 Javascript
使用postMesssage()实现iframe跨域页面间的信息传递
2016/03/29 Javascript
Bootstrap弹出框(modal)垂直居中的问题及解决方案详解
2016/06/12 Javascript
详解Vue.js动态绑定class
2016/12/20 Javascript
使用JavaScript实现一个小程序之99乘法表
2017/09/21 Javascript
Angular 开发学习之Angular CLI的安装使用
2017/12/31 Javascript
vue父组件异步获取数据传给子组件的方法
2018/07/26 Javascript
CSS3 动画卡顿性能优化的完美解决方案
2018/09/20 Javascript
详解如何写出一个利于扩展的vue路由配置
2019/05/16 Javascript
layui中select,radio设置不生效的解决方法
2019/09/05 Javascript
十分钟教你上手ES2020新特性
2020/02/12 Javascript
Vue + ts实现轮播插件的示例
2020/11/10 Javascript
一个超级简单的python web程序
2014/09/11 Python
Python内置函数dir详解
2015/04/14 Python
Python中为什么要用self探讨
2015/04/14 Python
利用Python如何生成随机密码
2016/04/20 Python
python使用openpyxl库修改excel表格数据方法
2018/05/03 Python
5分钟 Pipenv 上手指南
2018/12/20 Python
在Python中获取操作系统的进程信息
2019/08/27 Python
Python中函数的返回值示例浅析
2019/08/28 Python
windows 10 设定计划任务自动执行 python 脚本的方法
2019/09/11 Python
Python之Django自动实现html代码(下拉框,数据选择)
2020/03/13 Python
中国领先的专业家电网购平台:国美在线
2016/12/25 全球购物
Clarisonic美国官网:科莱丽声波洁面仪
2017/10/12 全球购物
Black Halo官方网站:购买连衣裙、礼服和连体裤
2018/06/13 全球购物
澳大利亚玩具剧场:Toy Playhouse
2019/03/03 全球购物
财务会计专业求职信
2014/06/09 职场文书
责任书格式
2015/01/29 职场文书
2016大学军训通讯稿
2015/11/25 职场文书
JVM上高性能数据格式库包Apache Arrow入门和架构详解(Gkatziouras)
2021/05/26 Servers