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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Парсинг XML

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Exponat
Отправлено: 10 Сентября, 2015 - 17:24:56
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Янв. 2013  


Помог: 0 раз(а)




При разборе xml пишу такое:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?$str = file_get_contents("http://site.net/mist.php");
  2. $xml = new SimpleXMLElement($str);?>


Если сделать var_dump($xml); получаю такое:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?object(SimpleXMLElement)#1 (5) {
  2.  ["api"]=>
  3.  string(6) "API-1C"
  4.  ["apiversion"]=>
  5.  string(1) "1"
  6.  ["result_table"]=>
  7.  object(SimpleXMLElement)#2 (1) {
  8.    ["items"]=>
  9.    array(22) {
  10.      [0]=>
  11.      object(SimpleXMLElement)#5 (26) {
  12.        ["UUID"]=>
  13.        string(36) "8D701F37-B28B-11E4-B90B-003048D2B473"
  14.        ["DescriptionUA"]=>
  15.        string(81) "Житомир-Львівська(м.Житомир,вул.Львівська 11)"
  16.        ["DescriptionRU"]=>
  17.        string(44) "г.Житомир,ул.Львовская 11"
  18.        ["RegionUUID"]=>
  19.        string(36) "D15E301D-60B0-11DE-BE1E-0030485903E8"
  20.        ["RegionDescriptionUA"]=>
  21.        string(22) "ЖИТОМИРСЬКА"
  22.        ["RegionDescriptionRU"]=>
  23.        string(22) "ЖИТОМИРСКАЯ"
  24.        ["DistrictUUID"]=>
  25.        string(36) "D00D3B86-41B9-11DF-907F-00215AEE3EBE"
  26.        ["DistrictDescriptionUA"]=>
  27.        string(14) "Житомир"
  28.        ["DistrictDescriptionRU"]=>
  29.        string(14) "Житомир"
  30.        ["CityUUID"]=>
  31.        string(36) "56BDD203-749B-11DF-B112-00215AEE3EBE"
  32.        ["CityDescriptionUA"]=>
  33.        string(14) "Житомир"
  34.        ["CityDescriptionRU"]=>
  35.        string(14) "Житомир"
  36.        ["StreetUUID"]=>
  37.        string(36) "FBFAFAD8-E0D2-11DF-9B37-00215AEE3EBE"
  38.        ["StreetTypeUA"]=>
  39.        string(7) "вул."
  40.        ["StreetDescriptionUA"]=>
  41.        string(18) "Львівська"
  42.        ["StreetTypeRU"]=>
  43.        string(5) "ул."
  44.        ["StreetDescriptionRU"]=>
  45.        string(18) "Львовская"
  46.        ["House"]=>
  47.        string(2) "11"
  48.        ["Flat"]=>
  49.        object(SimpleXMLElement)#27 (0) {
  50.        }
  51.        ["AddressMoreInformation"]=>
  52.        object(SimpleXMLElement)#28 (0) {
  53.        }
  54.        ["Limitweight"]=>
  55.        string(2) "30"
  56.        ["Branchtype"]=>
  57.        string(8) "МППВ"
  58.        ["Latitude"]=>
  59.        string(9) "50.259717"
  60.        ["Longitude"]=>
  61.        string(9) "28.666637"
  62.        ["BranchCode"]=>
  63.        string(3) "950"
  64.        ["WorkingHours"]=>
  65.        string(138) "Пн 10:00 - 20:00; Вт 10:00 - 20:00; Ср 10:00 - 20:00; Чт 10:00 - 20:00; Пт 10:00 - 20:00; Сб 10:00 - 18:00; Нд --:-- - --:--"
  66.      }
  67.      [1]=>
  68.      object(SimpleXMLElement)#6 (26) {
  69.        ["UUID"]=>
  70.        string(36) "50DDE2B0-C895-11E4-94FE-003048D2B473"
  71.        ["DescriptionUA"]=>
  72.        string(89) "Житомир-Котовського(м.Житомир,вул.Котовського 91)"
  73.        ["DescriptionRU"]=>
  74.        string(46) "г.Житомир,ул.Котовского 91"
  75.        ["RegionUUID"]=>
  76.        string(36) "D15E301D-60B0-11DE-BE1E-0030485903E8"
  77.        ["RegionDescriptionUA"]=>
  78.        string(22) "ЖИТОМИРСЬКА"
  79.        ["RegionDescriptionRU"]=>
  80.        string(22) "ЖИТОМИРСКАЯ"
  81.        ["DistrictUUID"]=>
  82.        string(36) "D00D3B86-41B9-11DF-907F-00215AEE3EBE"
  83.        ["DistrictDescriptionUA"]=>
  84.        string(14) "Житомир"
  85.        ["DistrictDescriptionRU"]=>
  86.        string(14) "Житомир"
  87.        ["CityUUID"]=>
  88.        string(36) "56BDD203-749B-11DF-B112-00215AEE3EBE"
  89.        ["CityDescriptionUA"]=>
  90.        string(14) "Житомир"
  91.        ["CityDescriptionRU"]=>
  92.        string(14) "Житомир"
  93.        ["StreetUUID"]=>
  94.        string(36) "FBFAFABA-E0D2-11DF-9B37-00215AEE3EBE"
  95.        ["StreetTypeUA"]=>
  96.        string(7) "вул."
  97.        ["StreetDescriptionUA"]=>
  98.        string(22) "Котовського"
  99.        ["StreetTypeRU"]=>
  100.        string(5) "ул."
  101.        ["StreetDescriptionRU"]=>
  102.        string(20) "Котовского"
  103.        ["House"]=>
  104.        string(2) "91"
  105.        ["Flat"]=>
  106.        object(SimpleXMLElement)#28 (0) {
  107.        }
  108.        ["AddressMoreInformation"]=>
  109.        object(SimpleXMLElement)#27 (0) {
  110.        }
  111.        ["Limitweight"]=>
  112.        string(2) "30"
  113.        ["Branchtype"]=>
  114.        string(8) "МППВ"
  115.        ["Latitude"]=>
  116.        string(9) "50.266610"
  117.        ["Longitude"]=>
  118.        string(9) "28.681218"
  119.        ["BranchCode"]=>
  120.        string(4) "1360"
  121.        ["WorkingHours"]=>
  122.        string(138) "Пн 09:00 - 18:00; Вт 09:00 - 18:00; Ср 09:00 - 18:00; Чт 09:00 - 18:00; Пт 09:00 - 18:00; Сб 09:00 - 18:00; Нд 09:00 - 17:00"
  123.      }
  124.      [2]=>
  125. ...
  126. ?>


Мне нужно вытянуть данные заключенные в DescriptionUA, DistrictDescriptionUA, StreetTypeUA, StreetDescriptionUA, House. Помогите.
 
 Top
DeepVarvar Супермодератор
Отправлено: 10 Сентября, 2015 - 17:28:49
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Use xpath, Luke:
CODE (xpath):
скопировать код в буфер обмена
  1. //DescriptionUA|//DistrictDescriptionUA|//StreetTypeUA|//etc
 
 Top
Exponat
Отправлено: 10 Сентября, 2015 - 17:32:51
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Янв. 2013  


Помог: 0 раз(а)




Это в php?
 
 Top
DeepVarvar Супермодератор
Отправлено: 10 Сентября, 2015 - 17:42:34
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




Yes!
 
 Top
Exponat
Отправлено: 10 Сентября, 2015 - 23:50:12
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Янв. 2013  


Помог: 0 раз(а)




А можно пример реализации? Справки о вашей информации нашел мало..
 
 Top
DeepVarvar Супермодератор
Отправлено: 11 Сентября, 2015 - 00:39:39
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




 
 Top
Exponat
Отправлено: 11 Сентября, 2015 - 10:15:45
Post Id



Частый гость


Покинул форум
Сообщений всего: 196
Дата рег-ции: Янв. 2013  


Помог: 0 раз(а)




Спасибо, вроде разобрался.
PHP:
скопировать код в буфер обмена
  1.  
  2. <?$str = file_get_contents("http://site.net/mist.php");
  3. $xml = new SimpleXMLElement($str);
  4.  
  5. foreach($xml->xpath('//items') as $item) {
  6.         if (!empty($item->CityDescriptionRU)){
  7.         echo 'г. '.$item->CityDescriptionRU;
  8.         }
  9.         else{
  10.         echo 'Города нет!';
  11.         }
  12.         echo ' ул. '.$item->StreetDescriptionRU;
  13.         echo ' , '.$item->House;
  14.         echo "<br />";
  15. } ?>
  16.  
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB