Как получить доступ к вложенному XML

#php #xml #foreach

#php #xml #foreach

Вопрос:

Привет, я использую XML-канал, и мне нужно получить доступ к циклу внутри цикла XML.

В основном xml, который у меня есть, это:

 <properties>
    <property>
        <images>
            <image modified="2012-04-03 19:20:16">http://image.url/</image>
            <image modified="2012-04-03 19:20:16">http://image.url/</image>
            <image modified="2012-04-03 19:20:16">http://image.url/</image>
            <image modified="2012-04-03 19:20:16">http://image.url/</image>
            <image modified="2012-04-03 19:20:16">http://image.url/</image>
            <image modified="2012-04-03 19:20:16">http://image.url/</image>
        </images>
    </property>
</properties>
  

У меня есть этот цикл:

 foreach($xml->property as $property) {
    foreach($property->images->image as $key => $value) {
        print_r($value);
    }
}
  

Но значение $ возвращает [@attributes] => Array ( [modified] => 2013-10-03 11:53:47

Я хочу, чтобы http://image.url / подлежит возврату.

Есть идеи?

Спасибо,

Том

Ответ №1:

Вам нужно преобразовать значение в строку, например:

 foreach($xml->property as $property) {
    foreach($property->images->image as $img) {
        $value = (string) $img;
        echo $value;
    }
}
  

Комментарии:

1. Это отлично работает, когда я повторяю его, но по какой-то причине, когда я помещаю его в запрос MySQL, чтобы установить его в базу данных, он помещает 0. У вас есть какие-либо идеи, почему?

2. Понял! Спасибо, это была проблема с WordPress. В любом случае спасибо!