создавать якоря на странице с содержанием <h2></h2> в PHP - PullRequest
0 голосов
/ 27 июня 2010

Ну, у меня есть текстовая строка html в переменной:

$html = "<h1>title</h1><h2>subtitle 1</h2> <h2>subtitle 2</h2>";

, поэтому я хочу создать привязки в каждом субтитре с тем же именем, а затем распечатать код html в браузере, а также получитьсубтитры в виде массива.

Я думаю, что используется регулярное выражение .. пожалуйста, помогите.

1 Ответ

1 голос
/ 27 июня 2010

Я думаю, это поможет вам:

$pattern = "|<h2>(.*)</h2>|U";
preg_match_all($pattern,$html,$matches);

foreach($matches[1] as $match)
    $html = str_replace($match, "<a name='".$match."' />".$match, $html);

$array_of_elements = $matches[1];

Просто убедитесь, что $ html имеет существующий html до запуска этого кода. После этого к нему будет добавлено <a name='foo' />, а $ array_of_elements будет иметь массив соответствующих текстовых значений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...