Heim >Backend-Entwicklung >PHP-Tutorial >有没有办法获得file_get_contents返回页面的url
用file_get_contents带cookie访问某远程页面,但是该页面跳转到另一页面,现在问题是能否获得跳转后页面的url?我知道用get_headers是可以获得cookie等头信息的,但是如何获得url呢?
get_headers 也能获得跳转的URL吧
file_get_contents 会根据 http 头的指示自动跳转到新的目标 url
如果目标 url 有跳转,则在 get_headers 的结果中有 Location 项。
且 get_headers 也会跟踪到最终目标,于是最后的 Location 项的值就是你要的了
$a = get_headers($url, 1);if(isset($a['Location'])) { $url = is_array($a['Location']) ? array_pop($a['Location']) : $a['Location'];}
你都知道原始链接,直接在浏览器打开,不就知道它跳转到哪个链接了嘛?
file_get_contents 会根据 http 头的指示自动跳转到新的目标 url
如果目标 url 有跳转,则在 get_headers 的结果中有 Location 项。
且 get_headers 也会跟踪到最终目标,于是最后的 Location 项的值就是你要的了
$a = get_headers($url, 1);if(isset($a['Location'])) { $url = is_array($a['Location']) ? array_pop($a['Location']) : $a['Location'];}
他只有一节 200,所以并没有发生 http 跳转
而是在表单接受页直接 include 了帖子页
你只能分析页面内容,找出帖子的 id
其实也很简单:找到回复的代码就可以了