2012-01-15 4 views
0

Google 뉴스 RSS와 PHP를 구문 분석하여 콘텐츠의 실제 링크를 가져오고 싶습니다.Google 뉴스의 실제 링크 받기 PHP가 포함 된 RSS

Google 뉴스 RSS 항목 링크는 다음과 같습니다

http://news.google.com/news/url?sa=t&fd=R&usg=AFQjCNGkF58EwDE7aA742GfVP9aE8azmhg&url=http://www.reuters.com/article/2012/01/15/us-obama-mlk-idUSTRE80E0PD20120115 

내가 모든 것을 바로 실제 링크가 필요 & URL 후 = :

http://www.reuters.com/article/2012/01/15/us-obama-mlk-idUSTRE80E0PD20120115 

어떻게 하나의 약을 갈 것 URL의 "필수적이지 않은"부분을 제거하여 본질적으로 http://news.google.com으로 시작하는 모든 것을 타겟팅합니다.으로 끝나며 & url =?

http://news.google.com/news/url?sa=t&fd=R&usg=AFQjCNGkF58EwDE7aA742GfVP9aE8azmhg&url= 

내가 좀 정규식을 할 수 있지만, 내 손이 닿지 않는 곳에이다 ...

감사합니다, 친구들! 여기

답변

3

정규식은 반드시 여기에 가장 좋은 방법이 아니다.

$query = parse_url($google_url, PHP_URL_QUERY); 
parse_str($query, $parts); 
$url = $parts['url']; 
+0

고마워! 그리고 URL의 "필수적이지 않은"부분을 제거하는 방법 (더 자세한 설명을 위해 질문을 편집)은 어떻게됩니까? – Tylerr

+0

실제로 프란시스의 해결책이 더 좋다고 생각합니다. – SteveK

+0

원하는 것은'$ url'에 있습니다. 당신은 원하지 않는 것을 제거하지 않고, 원하는 것을 얻고 나머지는 무시합니다. –

2

나중에 가서 :

$google_url = 'http://news.google.com/news/url?sa=t&fd=R&usg=AFQjCNGkF58EwDE7aA742GfVP9aE8azmhg&url=http://www.reuters.com/article/2012/01/15/us-obama-mlk-idUSTRE80E0PD20120115'; 
preg_match('/&url=([^&]+)/', $google_url, $matches); 
$url = $matches[1]; 
echo $url; 
+0

감사! 그리고 URL의 "필수적이지 않은"부분을 제거하는 방법 (더 자세한 설명을 위해 질문을 편집)은 어떻게됩니까? – Tylerr

+0

이것은 내가 실제로 필요로하는 것인데, 나는 지금 깨달았다 ... – Tylerr

관련 문제