2012-02-24 16 views
6

私は外部サイトからデータを返すためにcURLを使用しています。 PHPでサイトのベースURLを返すにはどうすればよいですか?私はちょうどhttp://www.bestbuy.com外部ウェブサイトのベースURLを取得する方法

感謝をしたい http://www.bestbuy.com/site/Insignia%26%23153%3B+-+55%22+Class+/+1080p+/+120Hz+/+LCD+HDTV/2009148.p?id=1218317000232&skuId=2009148

は例えば、私はこのURLを持っています!

答えて

13

 

$url = "http://www.bestbuy.com/site/Insignia%26%23153%3B+-+55%22+Class+/+1080p+/+120Hz+/+LCD+HDTV/2009148.p?id=1218317000232&skuId=2009148"; 
echo ""; 
print_r(parse_url($url));

//Would give you Array ( [scheme] => http [host] => www.bestbuy.com [path] => /site/Insignia%26%23153%3B+-+55%22+Class+/+1080p+/+120Hz+/+LCD+HDTV/2009148.p [query] => id=1218317000232&skuId=2009148 )

0

REGEX :)

使用この1(それは、PHP上で動作しますが、必要であれば、あなたは少しそれを変更することができるかどうかわからない)

/^((?:http:\/\/|https:\/\/)?(?:.+?))(?:\s*$|\/.*$)/

これは、http://またはhttps://と一致します(?\/\/)の後に?)

が存在すると、ご希望のURLが最初のキャプチャグループ、必要に応じて

あなたが省略できている場合は怠惰な一致は、行の終わりか/のいずれかまでだろう?どこでも正規表現で、あなたが得ることができます

  • 第一:第二の完全なURL
  • :第
  • のparams:プロトコル第
  • :ドメイン
関連する問題