Извлекаем атрибуты из шот/html кода

Предлагаю код очень простой функции-парсера атрибутов из кусочков html кода. Основное назначение — разбирать текст short-codes.

На входе: html код или shortcode.
На выходе: имя тега и набор атрибутов. Если ничего подходящего не найдено — получим false.

Примеры парсинга

Безразличие к виду скобок

Под шаблон одинаково хорошо подойдут входные данные вроде:

Результатом в любом из случаев будет вот такой массив:

Имена атрибутов и тега переводятся в верхний регистр. Может работать и вообще без скобок.

Несколько тегов

Если в парсер сунуть что то вроде :

т.е. пачку тегов вместо одного, то получим вот такой массив:

Функция проглотит последующие теги в качестве атрибутов, а одноименные атрибуты будут переписаны.

Мало букафф? Читайте есчо !

Формируем относительную ссылку

Март 2, 2017 г.

Посмотрим как можно сформировать url относительно текущего местоположения файла в php. К примеру, у в каталоге /site-script/ находится программа на PHP  и подкаталог /site-script/img, где хранятся картинки. Требуется построить относительный ...

Читать

Вызов замыкания из другой анонимной функции.

Декабрь 14, 2020 г.

При необходимости использовать (в PHP коде) замыкание (closure) A в коде замыкания B, возникает проблема в области видимости. Т.к. внутри B о функции A ничего не известно. Пример ситуации: [crayon-6973eb4b95b41099947945/] Для того чтобы в ...

Читать

Валидатор для JSON строки в PHP

Октябрь 2, 2018 г.

К JSON можно относиться как к одной из разновидностей текстовых форматов передачи данных. Но для PHP это просто ещё одна скалярная строка. Как определить, что перед нами действительно JSON? Чтобы убедиться, придется попытаться декодировать строку. ...

Читать

Публикация в Twitter средствами API (размещение текста, ссылки, картинки)

Апрель 11, 2013 г.

Да, представьте себе, у этой "пижни" есть свой API! Раньше им пользоваться было намного проще, не было этих наворотов с OAuth. Не смотря на мое личное ...

Читать
 

Комментарии к «Извлекаем атрибуты из шот/html кода»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: