我正在尝试搜索匹配字符串的网址,但下面的代码段似乎不起作用。
<?php
$url = "http://www.drudgereport.com";
$search = "a";
$file = file($url);
if (in_array($search,$file)) {
echo "Success!";
} else {
echo "Can't find word.";
}
?>
答案 0 :(得分:2)
如果您只是在页面上搜索字符串的出现,则可以使用
$str = file_get_contents($url);
if (strpos($str, $search) !== false) {
echo 'Success!';
} else {
echo 'Fail';
}
答案 1 :(得分:1)
答案 2 :(得分:1)
该代码只会找到一个具有精确$search
字符串的行(可能包括空格)。如果您正在解析HTML,请检查PHP的DOMDocument类。或者,您可以使用正则表达式来提取所需内容。
答案 3 :(得分:0)
正如@alex所说,检查是否启用了allow_url_fopen
您也可以使用strpos
搜索字符串:
<?php
$url = "http://www.drudgereport.com";
$search = "a";
$file_content = file_get_contents($url);
if (strpos($file_content, $search) !== false) {
echo "Success!";
} else {
echo "Can't find word.";
}
?>