PHP заменяет текст в теге <h1> </h1> - PullRequest
0 голосов
/ 07 февраля 2012

Я использую AJAX для вызова PHP-файла, который эффективно отредактирует отдельные фрагменты содержимого в другом HTML-файле.Моя проблема в том, что я не уверен в лучшем способе нацеливания на эти конкретные области.

Я подумал, что какой-то уникальный идентификатор нужно будет прикрепить к тегу, который нужно отредактировать или, возможно, в комментарии,а затем PHP просто ищет это перед выполнением замены?

Ответы [ 2 ]

2 голосов
/ 07 февраля 2012

Используйте для этого simplehtml .

Вы можете изменить все <h1> на foo следующим образом:

$html = file_get_html('http://www.google.com/');
foreach($html->find('h1') as $element) 
{
  $element->innertext = 'foo';
}
echo $html;
1 голос
/ 07 февраля 2012

Фреймворк simplehtmldom позволяет вам искать и изменять DOM HTML-файла или URL-адреса.

http://simplehtmldom.sourceforge.net/

// Create DOM from URL or file $html =
file_get_html('http://www.google.com/');

// Find all images foreach($html->find('img') as $element)
        echo $element->src . '<br>';

// Find all links foreach($html->find('a') as $element)
       echo $element->href . '<br>';

Еще одна приятная библиотека - querypath.Это очень похоже на jquery:

 qp($html_code)->find('body')->text('Hello World')->writeHTML();

https://fedorahosted.org/querypath/wiki/QueryPathTutorial

...