Php 上次加载的CURL资源URL
我在写一些有点复杂的卷曲。我碰巧遇到了这样一种情况:我需要知道CURL加载的最后一个URL(如果它被重定向),或者仅仅是Php 上次加载的CURL资源URL,php,curl,Php,Curl,我在写一些有点复杂的卷曲。我碰巧遇到了这样一种情况:我需要知道CURL加载的最后一个URL(如果它被重定向),或者仅仅是CURL\u init($URL)中的原始URL 我猜如果它被重定向,我可以解析位置标题: if(preg_match('/^Location:(.*)$/mi', $headers, $matches)>0) { echo "Final location is: {$matches[1]}\n"; //We know location thanks to fol
CURL\u init($URL)
中的原始URL
我猜如果它被重定向,我可以解析位置
标题:
if(preg_match('/^Location:(.*)$/mi', $headers, $matches)>0) {
echo "Final location is: {$matches[1]}\n"; //We know location thanks to follow location
}
else {
echo "Well, I'm doomed...\n"; //We don't know anything
}
顺便说一下,这就是我不喜欢PHP中的资源那么难的原因
再想想我意识到上面的脚本不起作用-重定向时加载的最后一页不会发送任何位置
标题。否则你会再次被重定向 试试这个:
$last_URL = curl_getinfo ( $ch ,CURLINFO_EFFECTIVE_URL );
注意:如果CURL达到重定向限制或CURLOPT\u FOLLOWLOCATION
设置为false(例如在安全模式下),那么您应该检查位置标题。再考虑一下:最后一页不发送位置-除非达到指定位置。