2012-01-16 4 views
0

존재 URL (예 : http://www.mydomain.com/)이 거짓이면 TRUE로 설정하면 url it 사이트로 콘텐츠를 검색하고 싶습니다.URL을 통해 사이트 콘텐츠의 URL을 찾으십시오.

존재 URL 목록을 다음과 같은, 그것은 거짓 반환하는 경우 :

http://www.mydomain.com/ 또는 http://www.mydomain.com

나는대로 시도

:

- http://www.mydomain.com/blog?12 
- www.mydomain.com/news/maste.php 
- http://www.mydomain.com/mkds/skas/aksa.html 
- www.mydomain.com/ 
- www.mydomain.com 

내가 (전용)로 단지 (찾기) accsept합니다 :

$url = 'http://www.usersite.com'; 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL,$url); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    $contents = curl_exec($ch); 
    curl_close($ch); 
    $link="/http:\/\/mydomain.com/"; 
    if(preg_match("/". preg_quote($link,"/"). "/m", $contents) && strstr($contents,"http://www.mydomain.com")){ 
     echo 'TRUE'; 
    } else{ 
     echo 'FALSE'; 
    } 

하지만 효과가 없습니다. 내가 원한다. 어떻게 해결할 수 있습니까?

답변

0

이미 정규식 형식이므로 링크에 preg_quote을 사용하지 않아야합니다. 대신 전체 /http:\/\/mydomain.com/m을 사용하십시오.

$link="/http:\/\/mydomain.com/m"; 
if(preg_match($link, $contents) && false!== stripos($contents,"http://www.mydomain.com")){ 
    echo 'TRUE'; 
} else{ 
    echo 'FALSE'; 
} 

또한 strstr을 불리언 값 안전 ​​함수로 사용하지 않으므로 절대 비교가 가능하도록 strstr을 업데이트했습니다.

+0

'http : // www.mydomain.com /'또는 'http : // www.mydomain.com'을 검색하고 싶지만 최상위 코드에는 콘텐츠가있는 경우 URL 만 있으면됩니다. 'www .mydomain.com/news/maste.php' 그것은 TRUE이지만, 나는 URL (http : // www.mydomain.com /'OR : http : //www.mydomain .com' 그것은 콘텐츠 사이트에. –

+0

그럴 경우 Extender 정규식이 필요합니다. 아마 그냥 끝날 수없는 문자를 지정하십시오. '[^ A-Za-z \?]' –

+0

모르겠다. 여기에 데모를 주시겠습니까? codepad.viper-7.com 또는 위의 게시물에서 코드를 업데이트하십시오. –

관련 문제