Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Генерация массива заголовков HTML


Recommended Posts

Доброе время суток, заказчик поставил интересную и вроде бы нужную всем задачу, в блоге нужно сделать ссылка навигации (с якорями на заголовки H2).

Вроде все логично, на JS такое написать легко переобойти html взять h2 вывести блок ссылок с якорями...

Но как это дело сделать на уровне пыхи?) найти в тексте все h2 сложить их в массив с якорем и текстом самого h2 ?

 

Есть кто такое делал, поделитесь опытом, очень нужно ...

Надіслати
Поділитися на інших сайтах

  В 08.03.2023 в 19:40, chukcha сказав:

парсер html
например DOMDocument

Expand  

Спасибо большое, что указали в какую сторону копать, никогда не сталкивался с парсингом...

Надіслати
Поділитися на інших сайтах

  В 08.03.2023 в 19:40, chukcha сказав:

например DOMDocument

Expand  

 

Некоторые пишут в инете, что это единственный правильный вариант. Но, извините, он немного медленный.

 

---

Я использовал вот такой Table of content -- https://github.com/caseyamcl/toc

Надіслати
Поділитися на інших сайтах

  В 09.03.2023 в 14:03, chukcha сказав:

$xQueryResults = new DOMXPath($domDocument);

Т.е. ??? Ноги откуда растут?

Expand  

В черный ящик не заглядывал. Может просто правильно приготовлено. Главное, что нормально работает

Надіслати
Поділитися на інших сайтах

  В 09.03.2023 в 18:22, buslikdrev сказав:

Подробнее распишите, что нужно сделать.

Expand  

 

Получить массив H2 заголовков 

Надіслати
Поділитися на інших сайтах

  В 09.03.2023 в 19:53, zomo сказав:

 

Получить массив H2 заголовков 

Expand  
		if (preg_match_all('/<h2.*?>(.[^<]*?)<\/h2>/iS', $this->output, $matches)) {
			if (!empty($matches[0])) {
				var_dump($matches);
			}
		}

 

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.