ホームページ >バックエンド開発 >PHPチュートリアル >file_get_contents によって返されたページの URL を取得する方法はありますか
file_get_contents によって返されたページの URL を取得する方法はありますか?
リモート ページにアクセスするには、file_get_contents を Cookie とともに使用しますが、ページが別のページにジャンプします。ここで問題は、次のページの URL を取得できるかどうかです。ジャンプ? get_headers を使用すると Cookie やその他のヘッダー情報を取得できることはわかっていますが、URL を取得するにはどうすればよいですか?
------解決策-----------
file_get_contents は http の指示に従って自動的にジャンプします。 header 新しいターゲット URL へ
ターゲット URL にジャンプがある場合、get_headers の結果に Location 項目が存在します。
そして get_headers は最終ターゲットも追跡するため、最後の Location 項目の値が必要なものになります
<br />$a = get_headers($url, 1);<br />if(isset($a['Location'])) {<br /> $url = is_array($a['Location']) ? array_pop($a['Location']) : $a['Location'];<br />}