Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: не могу разобрать xml
Форумы портала PHP.SU » » XML и его обработка » не могу разобрать xml

Страниц (2): [1] 2 »
 

1. jromka - 22 Ноября, 2012 - 02:36:45 - перейти к сообщению
Доброго времени суток
Пол дня просидел с xml
Проблема такая, не могу понять всю структуру файла
В общем мне нужно выдернуть все содержимое
Пытаюсь таким способом, выдергивает только родительский класс
$clients = simplexml_load_file('test.xml');
foreach ($clients->item as $client) {
print "Нов : $client->id $client->title <br> ";
}

http://pgu[dot]tambov[dot]gov[dot]ru/services/
2. DlTA - 22 Ноября, 2012 - 09:30:40 - перейти к сообщению
а если просто заглянуть в файл, разве не понятна его структура?
3. jromka - 22 Ноября, 2012 - 12:36:15 - перейти к сообщению
да вроде понятна, но то что нужно не могу выдернуть (
4. DlTA - 22 Ноября, 2012 - 12:46:41 - перейти к сообщению
простой пример с отображением возможности перебора элементов
PHP:
скопировать код в буфер обмена
  1. <?$xml = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  2. <menu>
  3. <item>
  4.         <title>fdasdf</title>
  5.         <title>hgd</title>
  6.         <description>text</description>
  7. </item>
  8. </menu>';
  9.  
  10. $data = simplexml_load_string($xml);
  11.  
  12. var_dump($data->{'item'}->{'description'});
  13. var_dump($data->item->title[1]);
  14. var_dump($data->{'item'}->{'title'}[0]);
5. jromka - 22 Ноября, 2012 - 13:04:19 - перейти к сообщению
да это понятно все, вот пример мой http://jromka[dot]ru/import.php он тут выдирает родительский класс получается, а мне нужен дочерний, который внутри идет
6. caballero - 22 Ноября, 2012 - 13:35:00 - перейти к сообщению
так покажи сам xml
какая проблема структура тегов видна - обращайся к дочерним
и шо сие такое родительский клас - в xml нет никаких классов.
7. jromka - 22 Ноября, 2012 - 13:44:13 - перейти к сообщению
я же скидывал сам xml, в первом сообщении)
мне нужно вывести все классы item

Вот xml сам http://pgu[dot]tambov[dot]gov[dot]ru/services[dot]xml
8. DlTA - 22 Ноября, 2012 - 13:55:36 - перейти к сообщению
хехе

походу не заметили что структура малеха спецефична, чем сбсно и запутывает
у вас там item 2-х уровней
что и вызывает сложность/ошибку

или проще говоря так:

обход по первому item это проход по администрациям, второй проход это уже проход по отделам/учереждениям в этих администарциях
(Добавление)
писец, они не пробовали загнать в кеш эти 10 000+ строчек, а не выцыплять каждый раз из базы
9. jromka - 22 Ноября, 2012 - 14:05:15 - перейти к сообщению
вот я и сам запутался ( пол ночи просидел так и не добился результата (
Что и как делали xml не знаю, была вот такая задача поставлена (
помогите чем сможете (
10. DlTA - 22 Ноября, 2012 - 14:26:22 - перейти к сообщению
а что не поянтно в предыдущем моем сообщении?
у вас должен быть цикл двойной вложенности
11. jromka - 22 Ноября, 2012 - 15:17:43 - перейти к сообщению
<?php
$clients = simplexml_load_file('test.xml');
foreach ($clients->item as $sb) {
print "Нов : $sb->administrative_level $sb->title <br> ";
foreach ($sb->children() as $subsite) {
print "$subsite->id<br>";


}
}




?>
такой ?
12. DlTA - 22 Ноября, 2012 - 18:35:14 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. <?
  2. $clients = simplexml_load_file('test.xml');
  3. foreach ($clients->item as $sb) {
  4. print "Нов : $sb->administrative_level $sb->title <br> ";
  5.   foreach ($sb->item as $subsite) {
  6.    print "$subsite->id<br>";
  7.   }
  8. }
13. jromka - 22 Ноября, 2012 - 21:54:03 - перейти к сообщению
помоему не все выводится

Ну да там всего 528 записей, а выводится только 470 (
14. DlTA - 22 Ноября, 2012 - 22:04:15 - перейти к сообщению
ну тогда лупу в руки, и вперед за орденами,
смотреть что и почему не вывелось
15. jromka - 22 Ноября, 2012 - 22:15:38 - перейти к сообщению
второй день уже ищу проблему ((

 

Powered by ExBB FM 1.0 RC1