Я пытаюсь использовать завиток, чтобы определить, существует ли фрагмент текста в исходном коде удаленной веб-страницы. Например, я пытаюсь проверить, существует ли эта строка в источнике:
<!-- BEGIN TEST CODE -->
Если он существует в исходном HTML-тексте удаленной веб-страницы (скажем, example.com ), я хочу эхо «да». Если он не существует в источнике, я хочу, чтобы он эхо «нет».
Это то, что я пробовал до сих пор:
$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"; }
Когда я запускаю его, он всегда выводит «да». Что не так в моем коде, и как я должен делать это правильно?
Две функции, которые вам нужны, – cURL
и strpos()
.
<?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