Для вступления в общество новичков и профессионалов домен-индустрии, пожалуйста нажмите здесь ...

   
 Купля-продажа и обсуждение доменных имён
        

  
Вернуться   Форум о доменах > Дизайн и развитие проектов > Программирование
Регистрация Реноме Правила форума Справка Пользователи Социальные группы Все разделы прочитаны
Программирование PHP, Perl, HTML, XHTML, CSS, JavaScript, MySQL и другие языки кодирования.

Ответ
 
Опции темы
Сегодня
от 149р за .RU
Аренда сервера
2x Intel Hexa-Core Xeon E5-2420
Всего 79 евро!

с видеокартой GeForce GTX 1080 Ti
всего 99 евро!

от 149р за .РФ Реклама на DomenForum.net
Старый 07.09.2016, 17:15   #1
 
Аватар для Port_Artur
 
Регистрация: 03.12.2006
Адрес: Россия
Сообщений: 3,495
Доменные сделки: 24
Реноме: 1551
Одобрения
Спасибо (Отдано): 529
Спасибо (Получено): 750
Отправить сообщение для Port_Artur с помощью ICQ
XML нужно выбрать конкретные значения

Перебираю записи XML чтобы получить значения tit и ta обычно так:

$xmlres = simplexml_load_string($xml);

foreach ($xmlres->sto as $sto) {
$t=$sto->sta->tit;
$i=$sto->sta->cod->ta;}

Так делаю когда много записей с именем STO и нужно перебрать все значения.

Сейчас мне нужно получить значения tit и ta в переменные $t и $i обратившись в XML конкретно только к 1-й записи STO и ко 2-й.

Как мне это сделать?
Подскажите пожалуйста.
Port_Artur вне форума   Ответить с цитированием
Старый 08.09.2016, 09:07   #2
 
Аватар для passport
 
Регистрация: 14.04.2010
Адрес: Earth
Сообщений: 121
Доменные сделки: 1
Реноме: 255
Одобрения
Спасибо (Отдано): 4
Спасибо (Получено): 31
Ну а если просто поставить счётчик

Код:
$ii = 0;
foreach ($xmlres->sto as $sto) {
    if (++$ii > 2)
        break;
    $t = $sto->sta->tit;
    $i = $sto->sta->cod->ta;
}
__________________
Я написал выше.
passport вне форума   Ответить с цитированием
Старый 08.09.2016, 10:38   #3
 
Аватар для Port_Artur
 
Регистрация: 03.12.2006
Адрес: Россия
Сообщений: 3,495
Доменные сделки: 24
Реноме: 1551
Одобрения
Спасибо (Отдано): 529
Спасибо (Получено): 750
Отправить сообщение для Port_Artur с помощью ICQ
Можно и так, просто думал можно обратиться конкретно к определённой записи. Не только к 1 или 2, а например к 5 или 15. Просто ничего не нашёл в сети, думал может кто знает.
Port_Artur вне форума   Ответить с цитированием
Старый 08.09.2016, 11:41   #4
 
Аватар для passport
 
Регистрация: 14.04.2010
Адрес: Earth
Сообщений: 121
Доменные сделки: 1
Реноме: 255
Одобрения
Спасибо (Отдано): 4
Спасибо (Получено): 31
Ну, как вариант, попробуйте так.

Код:
$numRec = 15; // номер записи, которую хотим прочитать

echo '<br/>-- Запись #' . $numRec . ' ';
if (!isset($xmlres->sto[$numRec]))
	echo 'не существует --';
else {
	$t = $xmlres->sto[$numRec]->sta->tit;
        $i = $xmlres->sto[$numRec]->sta->cod->ta;
        echo '--<br/> $t = ' . $t . '<br/>' . ' $i = ' . $i . '<br/>-- Конец записи #' . $numRec . ' --';
}
__________________
Я написал выше.
passport вне форума   Ответить с цитированием
Старый 09.09.2016, 15:39   #5
 
Аватар для Mendel
 
Регистрация: 07.07.2007
Адрес: Одесса-мама :)
Сообщений: 707
Доменные сделки: 7
Реноме: 1320
Одобрения
Спасибо (Отдано): 17
Спасибо (Получено): 14
Отправить сообщение для Mendel с помощью ICQ
По логике у нас SimpleXMLElement implements Traversable
ArrayAccess я тут не вижу. Так что не должно оно сработать.
Но если хочется красоты, а не кошмариков (да и скорость выше)
то используйте iterator_to_array
Например
$sto = iterator_to_array($xmlres->sto);
Mendel вне форума   Ответить с цитированием
Ответ



Реклама

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Закладки Добавить Тема в закладки

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 00:23. Часовой пояс GMT +4.