我已经调整了一个小脚本来检查反向链接。然而,我还是不断地得到错误
警告: preg_match()函数.preg-match:在第17行中找不到结束分隔符'/‘。
<?php
function file_get_contents_curl($url) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
function google_backlink($uri)
{
$url = 'http://www.google.com/search?q=link:facebook.com&hl=en&filter=0';
$v = file_get_contents_curl($url);
preg_match('/<div id="resultStats">About \(.*?)\ ',$v,$s);
$s_number = explode(".", $s[1]);
$i = 0;
if ($s[1]!=0) {
return $s[1];
} else {
return ($r[1]) ? $r[1] : '0';
}
}
echo "Google backlink = ".google_backlink($url)."<br />";
?>preg_match('/<div id="resultStats">About \(.*?)\ ',$v,$s);出了什么问题
发布于 2011-06-23 03:06:36
错误非常明显,您没有包含尾随的/
preg_match('/<div id="resultStats">About \(.*?)\ /',$v,$s);但我真的怀疑你的转义字符是否放在了合适的位置。也许你指的是\)
发布于 2011-06-23 03:06:59
它没有结束/
preg_match('/ pattern /', $subject);
您有一个开始(斜杠) /,但没有结束(斜杠) /
它会在两个斜杠之间查找您定义的模式。
发布于 2011-06-23 03:07:21
尝试更改preg_match('/<div id="resultStats">About \(.*?)\ ',$v,$s);
转到preg_match('/<div id="resultStats">About \(.*?)\ /',$v,$s);
/是一个“分隔符”,这意味着它告诉preg_match正则表达式模式的结束位置。
https://stackoverflow.com/questions/6445133
复制相似问题