Робота з xml в php, трепачёв дмитрий

парсинг сайтів

Зараз ми з вами вивчимо роботу з XML. XML - це формат для обміну даними між сайтами. Він дуже схожий на HTML, тільки в XML дозволені свої теги і атрибути.

Навіщо потрібен XML при парсінгу? Іноді буває так, що сайт, який вам потрібно Спарс, має API, за допомогою якого можна отримати бажане, особливо не напружуючись. Тому відразу порада - перед тим, як парсити сайт, перевірте, чи немає у нього API.

Що таке API? Це набір функцій, за допомогою яких ви можете надсилати запит цьому сайту і отримувати потрібну відповідь. Ось ця відповідь найчастіше приходить в форматі XML. Тому давайте приступимо до його вивчення.

Робота з XML в PHP

Нехай у вас є XML. Він може бути в рядку, або зберігається в файлі або віддаватися за запитом до певного URL.

Нехай XML зберігається в рядку. В цьому випадку з цього рядка потрібно створити об'єкт за допомогою new SimpleXMLElement.

Зараз у нас в змінній $ xml зберігається об'єкт з розібраним XML. Звертаючись до властивостей цього об'єкта можна отримувати доступ з вмісту тегів XML. Як саме - розберемо трохи нижче.

Якщо ж XML зберігається в файлі або віддається за зверненням до URL (що найчастіше і буває), то слід використовувати функцію simplexml_load_file. яка робить той же об'єкт $ xml.

прийоми роботи

У прикладах нижче наш XML зберігається в файлі або по URL.

Нехай дано наступний XML:

Давайте отримаємо ім'я, вік і зарплату працівника:

Як ви бачите, у об'єкта $ xml є властивості, відповідні тегам.

Ви може звернули увагу, що тег ніде не фігурує при зверненні. Це тому, що він кореневої тег. Можна перейменувати його, наприклад, на - і нічого не зміниться:

Кореневої тег в XML може бути тільки один, так само, як і тег в звичайному HTML.

Давайте трохи модифікуємо наш XML:

В цьому випадку у нас вийде ланцюжок звернень:

Робота з атрибутами

Схожі статті