PHP는

2012-11-15 3 views
-5

내가에서 페이스 북의 페이지 ID를 얻기 위해 노력하고 있어요와 컨텐츠를 긁어 시도 패턴 /like_box.php?id=89562268312. https://graph.facebook.com/89562268312/picture 등이PHP는

<?php 
    $page = file_get_contents('http://fanpagelist.com/category/top_users/view/list/sort/fans/page1'); 
    preg_match_all('graph.facebook.com,picture', $page, $result, PREG_SET_ORDER); 
    foreach ($result as $row) { 
     echo "<p><b>$row[1]</b> $row[2]</p>\n"; 
    } 
?> 

문제는 내가 태그하지만 패턴을 긁어하려고 아니에요이다.

+4

' 'graph.facebook.com, picture''는 정규 표현식이 아닙니다. –

+0

오류 또는 빈 페이지가 표시됩니다. 내가 그 곳에 무엇을 넣어야합니까? –

+0

* [Open source RegexBuddy alternatives] (http://stackoverflow.com/questions/89718/is-there) 및 [온라인 정규식 테스트] (http://stackoverflow.com/questions/32282/regex-testing) 도움이되는 도구는 [RegExp.info] (http://regular-expressions.info/)를 참고하십시오. – mario

답변

1

당신은 좋은해야한다 :

preg_match_all('#(?:(?<=\bhref="/like_box\.php\?id=)|' . 
       '(?<=\bsrc="https://graph\.facebook\.com/))\d+#i', 
       $page, $result, PREG_PATTERN_ORDER); 

this demo를 참조하십시오.

+1

작품. 고맙습니다 –