как получить этот массив с помощью цикла foreach - PullRequest
1 голос
/ 06 ноября 2011

у меня есть многомерный массив. массив возвращается путем анализа xml с помощью curl. когда curl дал мне вывод, я преобразовал вывод в массив, используя $ array = (array) simplexml_load_string ($ query); и массив $ приведен ниже. Теперь я хочу получить этот массив с помощью цикла foreach и хочу, чтобы все из этого массива

Array
(
[Meta] => SimpleXMLElement Object
    (
      [Query] => php programming
      [ResultOffset] => SimpleXMLElement Object
            (
            )

      [NumResults] => 25
      [TotalResults] => 36839
    )

[Slideshow] => Array
       (
        [0] => SimpleXMLElement Object
            (
                [ID] => 1966058
                [Title] => title here
                [Description] => description here
                [Status] => 2
                [Username] =>usrname
                [URL] => url here
                [ThumbnailURL] => a url
                [ThumbnailSmallURL] => a url
                [Embed] => some embed code
    )
    [1] => SimpleXMLElement Object
            (
                [ID] => 1966058
                [Title] => title here
                [Description] => description here
                [Status] => 2
                [Username] =>usrname
                [URL] => url here
                [ThumbnailURL] => a url
                [ThumbnailSmallURL] => a url
                [Embed] => some embed code
    )

и продолжить

Ответы [ 2 ]

2 голосов
/ 06 ноября 2011

Вы можете получить метаинформацию без использования foreach:

echo $array['Meta']->Query;
echo $array['Meta']->NumResults;

и так далее ...

Чтобы получить слайд-шоу:

foreach($array['Slideshow'] as $slideshow)
{
    echo $slideshow->ID;
    echo $slideshow->Title;
    //-- and so on...
}
1 голос
/ 06 ноября 2011

Если вы хотите получить идентификатор и заголовки каждого объекта SimpleXMLElement, попробуйте следующее:

<?php
forach ($array['Slideshow'] as $simpleXMLelem) {
  echo $simpleXMLelem->getId();
  echo $simpleXMLelem->getTitle();
}
...