检查网页中是否存在字符串


Check if string exists in a web page

我正在尝试使用curl来检测远程网页的源代码中是否存在一段文本。例如,我试图看看这个字符串是否存在于源中:

<!-- BEGIN TEST CODE -->

如果它存在于远程网页(比如example.com)的HTML源代码中,我想回显"是"。如果它不存在于源中,我希望它回显"否"。

这就是我迄今为止所尝试的:

$ch = curl_init("http://www.example.com");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$text = curl_exec($ch);
$test = strpos($text, "<!-- BEGIN TEST CODE -->");
if ($test==false)
{
    echo "yes";
}else{
    echo "no";
}

当我运行它时,它总是输出"是"我的代码出了什么问题,我应该如何正确处理

您需要的两个函数是cURLstrpos()

<?php
$ch = curl_init("http://www.example.com");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$text = curl_exec($ch);
$test = strpos($text, "<!-- BEGIN TEST CODE -->");
if ($test==false)
{
    echo "no";
}
else
{
    echo "yes";
}
?>

您尝试过使用$is_a_test = strpos($the_page_text, "<!-- BEGIN TEST CODE -->");吗?

PHP strpos()文档:http://www.php.net/manual/en/function.strpos.php