PHP простая загрузка XML-значения - PullRequest
0 голосов
/ 01 февраля 2012

Рассмотрим следующий XML-документ.Мне нужно получить значение «Колумби».Это всегда 2-ой в строке, всегда с Language = 'sqi'.Есть ли способ сделать это без зацикливания в foreach?Причина, по которой я спрашиваю, заключается в том, что у меня это происходит во многих случаях, и я думаю, что это просто замедляет работу системы за счет большого количества циклов.Это просто перевод XML, дающий разные значения для разных языков.Представьте себе возможности и циклы, которые мне нужны для каждого слова.Есть ли способ получить его с помощью переменной, то есть категория-> тексты-> текст->? Язык = sqi-> значение или еще много чего?

Заранее спасибо.

<Category id="274">
    <Texts>
        <Text Language="def">
            <Value>Colombia</Value>
        </Text>
        <Text Language="sqi">
            <Value>Kolumbi</Value>
        </Text>
        <Text Language="en">
            <Value>Colombia</Value>
        </Text>
    </Texts>
</Category>

1 Ответ

0 голосов
/ 01 февраля 2012

Использование simplexml_load_string.

$xml_string = '<Category id="274">
  <Texts>
     <Text Language="def">
        <Value>Colombia</Value>
     </Text>
     <Text Language="sqi">
        <Value>Kolumbi</Value>
     </Text>
     <Text Language="en">
        <Value>Colombia</Value>
     </Text>
  </Texts>
 </Category>';

$xml_array = simplexml_load_string($xml_string);

echo $xml_array->Texts->Text[1]->Value;

Кодовая панель

Примечание: Как вы сказали здесь kolumbi всегда будет вторым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...