Возвращаемая строка, включая найденную строку
Скажем, у меня есть HTML-документ: (выдержка ниже с номерами строк)
30 - <div id="myDiv">
31 - <span class="mySpan">Some Text</span>
Я использую PHP:
$html = file_get_contents('myHtml.html')
Я хочу найти номер строки, по которой найдена строка (предположим, что в документе есть только одно вхождение строки), и вернуть все содержимое, найденное в этой строке. Например,
getLine('myDiv'); //returns <div id="myDiv">
getLine('class="mySpan"'); //returns <span class="mySpan">Some Text</span>
Как я могу это сделать? Спасибо!
1 ответ
Решение
Понимание line
в качестве набора символов, разделенных символом новой строки ('\n'), вы можете разбить строку $html следующим образом:
$lines = explode("\n", $html);
Затем выполните итерацию каждой строки, сохраняя количество строк:
$lineno = 1;
foreach ($lines as $line) {
if (strstr($line, $what_to_find) !== FALSE) {
//Match
echo "Line $lineno: $line\n";
}
$lineno++;
}