2012-01-16 4 views
0

存在する場合は私のURL(例:http://www.mydomain.com/)がTRUEならば、それは偽です。urlでコンテンツのサイトにあるURLを探しますか?

次のリストとして存在URLであれば、それはFALSEである戻り値:

- 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たい:

http://www.mydomain.com/ OR http://www.mydomain.com

私のように試してみました:

$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を更新してブールセーフな機能ではないため、絶対比較をしました。

+0

「http:// www.mydomain.com /」または「http:// www.mydomain.com」を検索するだけですが、コンテンツが存在する場合は先頭のコードに「www .mydomain.com/news/maste.php'それはTRUEですが、私は検索(検索)したいURLは 'http:// www.mydomain.com /' OR 'http://www.mydomain .com'それはコンテンツのサイトです。 –

+0

その場合はエクステンダー正規表現が必要になります。おそらく、終わりの後に続くことができない文字を指定するだけです。 '[^ A-Za-z \?]' –

+0

私はそれについて知らない、私にここでデモを与えてください:codepad.viper-7.comまたは上記のポストであなたのコードを更新してください。 –

関連する問題