如何将URL放入数组并在数组中搜索匹配的字符串?

时间:2011-11-02 03:37:19

标签: php arrays string

我正在尝试搜索匹配字符串的网址,但下面的代码段似乎不起作用。

<?php

$url = "http://www.drudgereport.com";

$search = "a";
$file = file($url);

if (in_array($search,$file)) {
    echo "Success!";
} else {
    echo "Can't find word.";
}

?>

4 个答案:

答案 0 :(得分:2)

如果您只是在页面上搜索字符串的出现,则可以使用

$str = file_get_contents($url);
if (strpos($str, $search) !== false) {
    echo 'Success!';
} else {
    echo 'Fail';
}

答案 1 :(得分:1)

in_array()检查数组成员是否等于针。

很可能很多网站都只有一行等于a

此外,是否启用了allow_url_fopen

答案 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.";
}

?>