Робота з атрибутами вузлів у XML-документі через DOM

вузлів

Продовжимо темуDOM, і сьогодні ми торкнемосяроботи з атрибутами вузлів у XML-документі через DOM. У цій статті Ви навчитесязчитувати значення атрибутів у вузлів, а такожвстановлювати нові значення у існуючих атрибутівтастворювати нові.

Наводжу одразу досить прозорий приклад:

Елемент 1 Елемент 2"; $dom->loadXML($xml); // Завантажуємо в об'єкт domDocument XML-розмітку $root = $dom->documentElement; // Добираємося до кореневого елемента root $el_1 = $root->firstChild;// Перший дочірній елемент у root $el_2 = $el_1->nextSibling; el_1->getAttribute("a"); // Виводимо значення атрибуту "a" у 1-го елемента el echo " "; // Переходимо на наступний рядок у браузері $el_2-> ;setAttribute("b", 8);// Встановлюємо атрибут "b" зі значенням 8 у 2-го елемента el echo $el_2->getAttribute("b"); // Виводимо значення атрибута "b" у одного елемента el ?

Не думаю, що у когось виникнуть проблеми з розумінням коду, тому я тут додав ще кілька корисних властивостей, які іноді використовуються. Це властивості класуdomNode, які називаються:firstChildіnextSibling. Перша властивість повертає перший дочірній вузол у елемента, до якого ми звертаємося. А друга властивість повертає елемент, наступний відразу за тим, до якого ми звертаємось. У прикладі, ми звертаємося до "Елементу 1", а отримуємо наступний елемент, у нашому випадку, це "Елемент 2". Сподіваюся, зрозуміло пояснив.

Властивостей та методів у класів із стандартуDOMдуже багато, всі їх можна подивитися в довіднику, а тут я лише наводжу деякі приклади їх використання. Найголовніше, що Ви повинні навчитисяробити цестворювати XML-документи і розбирати їх, і до цього ми поступово йдемо.

Додайте до мене в друзіВКонтакте: http://vk.com/myrusakov. Якщо Ви хочете дати оцінку мені та моїй роботі, то напишіть її в моїй групі: http://vk.com /rusakovmy.

Запропонуйте цю статтю друзям:

Якщо Вам сподобався сайт, розмістіть посилання на нього (у себе на сайті, на форумі, в контакті):

Вона виглядає ось так:

  • BB-код посилання для форумів (наприклад, можете поставити його у підписі):
  • Коментарі ( 2 ):

    А тут ще й така помилка додалася.

    Дещо неправильне звернення до елементів. $el_1 = $root->firstChild; звернеться до порожнього текстового вузла, звернення, саме до елемента $el_1 = $root->firstChild->nextSibling; , отже до сліду елементу $el_2 = $el_1->nextSibling->nextSibling; , щоб пропустити слід. порожній текстовий вузол. IE до версії 9 не генерував вузли із пробілів. Це дуже важливо, т.к. призводить до того, що DOM-дерево в IE6,7,8 не таке, як в інших браузерах. Це актуально для html DOM, мб і в xml щось подібне