$html = "txt 23 txt txt 23 txt txt 23 txt";
$dom = new DOMDocument();
$dom->loadHTML('' . $html);
$xpath = new DOMXPath($dom);
$tags = $xpath->query('//div'); //'//div[@class="text"]'
foreach ($tags as $tag) {
$tag->textContent = str_replace('txt', '45', $tag->textContent);
}
$html_out = $dom->saveHTML();
echo $html_out;
Суть задачи такова: имеется html форматированный текст
Необходимо в только содержании тега div произвести поиск и замену текста
Пример
Текст="txt 23 txt <div style='стили'>txt 23 txt</div> txt 23 txt"
Внутри div ищем все "txt" и меняем их на "45"
Должно быть так
Текст="txt 23 txt <div style='стили'>45 23 45</div>txt 23 txt"