Pull to refresh
  • by relevance
  • by date
  • by rating

Пишем свой XML-парсер

PHP

Предыстория


Решив запустить небольшой сервис на подаренном мне хостинге, оказалось, что там нету ни одного xml-парсера: ни SimpleXML, ни DOMXML, а только libxml и xml-rpc. Недолго думая, я решил написать свой. Мне требовался разбор не сложных rss-лент, поэтому хватило достаточно просто класса xml => array.[1]

Но для интересной статьи этого было явно не достаточно, поэтому сейчас мы напишем свою замену для SimpleXML. А заодно пробежимся по многим интересным возможностям PHP 5.

Постановка задачи


Доступ к элементам у нас будет осуществляться как доступ к свойствам класса, например $xml->element, а доступ к атрибутам элемента, как к массиву, те $xml->element['attr'], также реализуем проверку на существование атрибута при помощи isset() и итерацию по элементам при помощи foreach. И так, начнем.
Читать дальше →
Total votes 1: ↑1 and ↓0+1
Views68K
Comments 42

SimpleXML. Пример расширенного использования

Lumber room
Думаю многие пользователи уже знакомы с этим замечательным классом для обработки xml документов. В этой статье хочу привести несколько примеров использования, которых не нашел в официальной документации, но которые были бы полезны начинающим пользователям.
Читать дальше →
Total votes 11: ↑8 and ↓3+5
Views1.5K
Comments 6

Простейшая генерация odt файла из существующего

PHP
Как-то раз передо мной стояла задача реализовать генерацию договоров для клиентов с нашего корпоративного сайта.
Сначала задача была решена просто ужасно — был заготовлен html шаблон договора, а пользователю выдавалась конвертация шаблона в pdf. Само собой это выливалось в кучу неудобств, в том числе, если требовалось что-то поменять в договоре.

Следующим решением было генерация odt документа. Это позволило редактировать документ нашим менеджерам независимо от сайта и программистов.
Полностью генерировать с нуля смысла нет. Почему бы не поработать с уже имеющимся файлом (отредактированным в OpenOffice) и просто заменить в нем необходимые элементы?

Этим мы с вами и займемся.
Читать дальше →
Total votes 35: ↑33 and ↓2+31
Views9K
Comments 23

Пишем свой рейтинг популярных записей русскоязычных блогов на базе Яндекс.API, часть 1

PHP
Жил-был в составе поиска по блогам Яндекса рейтинг популярных записей, который для многих был такой себе ежедневной газеткой. Но решили в Яндексе его закрыть да предоставили API, чтобы каждый желающий мог сделать свой рейтинг популярных записей по блогам, чем мы собственно сегодня и займемся. Писать будем на PHP.
Читать дальше →
Total votes 27: ↑14 and ↓13+1
Views1.7K
Comments 13

Функция конвертации stdClass в SimpleXml

PHP
Для одного личного проекта (да и давно просто хотелось попробовать) решил использовать в качестве шаблонизатора — XSLT. Все вроде бы чудесно: для xsl-преобразований требуется объект SimpleXml, из базы возвращается тоже объект, казалось бы в чем проблема, почему нельзя передавать объект из базы напрямую в шаблонизатор?

Читать дальше →
Total votes 19: ↑11 and ↓8+3
Views3.5K
Comments 13