我希望通过url it site搜索网站内容,如果存在我的网址(例如:http://www.mydomain.com/)则返回TRUE,否则为FALSE。
如果存在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
我想要(仅)承认(找到):
http://www.mydomain.com/
或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 :(得分: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更新为stripos并进行绝对比较,因为它不是布尔安全函数。