ホームページ >バックエンド開発 >PHPチュートリアル >PHP はどのように URL 経由でアクセスし、新しい URL を取得しますか [Baidu マップの呼び出し]
PHP で URL アクセスして新しい URL を取得する方法 [百度地図を呼び出す]
モバイル WeChat でナビゲーションを実行したい
現在のナビゲーションの URL アドレスを IE のアドレス バーに入力すると、通常アクセス: http://api.map.baidu.com/direction?origin=latlng:24.481428,118.124813|name:テスト開始点&destination=latlng:24.503361,118.139877|name:テスト目的地&mode=driving®ion=Xiamen&output=html
入力後 Enter を押すと、アドレスが次のように変更されたことがわかります:
http://map.baidu.com/?l=&s=nav&sn=1$$$$13149737.11,2794316.21$$テスト開始point$$$$$$ &en=1$$$$13151414.05,2796984.18$$テスト エンドポイント$$$$$$&sc=194&ec=194
PHP を使用して新しい URL を取得する方法を知りたい元の URL に基づいてリクエストしますか?ありがとう。
-----解決策------ - -
元の URL は http://api.map.baidu.com/direction?origin=latlng:24.481428,118.124813
------解決策--- -- ----------------
name:テスト開始点&目的地=latlng:24.503361,118.139877
-----解決策-- -- ----------------
名前: test endpoint&mode=driving®ion=Xiamen&output=html
新しい URL は http://map.baidu です。 com/?l=&s=nav&sn=1$$$$13149737.11,2794316.21$$テスト開始点$$$$$$&en=1$$$$13151414.05,2796984.18$$テスト終了点$$$$$$&sc =194&ec =194
新しい URL では開けますが、古い URL では開けませんよね?
古い URL に基づいて新しい URL を取得して、それを使用したいということですか?
------解決策---------
試してください。
<br />$url = 'http://api.map.baidu.com/direction?origin=latlng:24.481428,118.124813<br><font color='#FF8000'>------解决方案--------------------</font><br>name:测试起点&destination=latlng:24.503361,118.139877<br><font color='#FF8000'>------解决方案--------------------</font><br>name:测试终点&mode=driving®ion=厦门&output=html';<br />$newurl = getMapUrl($url);<br />echo $newurl;<br /><br />function getMapUrl($url){<br /> file_get_contents($url);<br /> $result = $http_response_header;<br /> if($result){<br /> foreach($result as $val){<br /> if(substr($val,0,10)=='Location: '){<br /> return str_replace('Location: ','', $val);<br /> }<br /> }<br /> }<br /> return '';<br />}<br />