[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Чем перевести XML c атрибутами в обьект
z3rg
Здраствуйте. Нужно перенести XML в объект. Пробовал Zend_Json но он при такой структуре

Пример 1
Цитата

<sites>
  <site id="2">mail.ru</site>
  <site id="3">ya.ru</site>
</sites>



не может прочитать атрибуты а читает только если структура будет такой

Пример 2
Цитата

<sites>
  <site id="2"><url>mail.ru</url></site>
  <site id="3"><url>ya.ru</url></site>
</sites>


Ребята подскажите пожалуйста XML парсер который сможет прочитать атрибуты как в 1 примере.



Спустя 6 минут, 50 секунд (11.02.2012 - 13:45) Winston написал(а):
simplexml

Спустя 20 минут, 30 секунд (11.02.2012 - 14:05) z3rg написал(а):
Winston, пробовал он тоже самое, не выводит атрибуты.

<?php
$obj = simplexml_load_string('<sites>
<site id="2">mail.ru</site>
<site id="3">ya.ru</site>
</sites>'
);
print_r($obj);
?>


результат:
SimpleXMLElement Object ( [site] => Array ( [0] => mail.ru [1] => ya.ru ) )

Спустя 39 минут, 53 секунды (11.02.2012 - 14:45) Winston написал(а):
Свернутый текст
$obj = simplexml_load_string('<sites>
<site id="2">mail.ru</site>
<site id="3">ya.ru</site>
</sites>'
);
echo $obj->site->attributes()->id; // Атрибут ID - первого элемента
echo '<br/>';
echo $obj->site[0]; // Текстовое значение первого элемента
echo '<br/>';
print_r($obj);

И в чем проблема? :)

Спустя 1 минута, 18 секунд (11.02.2012 - 14:46) Winston написал(а):
А для
Цитата (z3rg @ 11.02.2012 - 12:38)
<sites>
  <site id="2"><url>mail.ru</url></site>
  <site id="3"><url>ya.ru</url></site>
</sites>

Вот так
echo $obj->site[0]->url; // Текстовое значение первого элемента

Спустя 6 часов, 10 минут, 25 секунд (11.02.2012 - 20:57) z3rg написал(а):
Winston, жесть я думал раз print_r не выводит атрибут то его нету. На Zend_Json наверное тоже самое. Спасибо тебе огромное, я бы не догадался.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.