php XML и хэш / ассоциированные массивы - PullRequest
0 голосов
/ 08 октября 2009

Используя PHP SimpleXML, я хотел бы получить ключ и дочерний элемент. Первый элемент, если их больше одного. Как мне это сделать? 2-я строка не имеет смысла, так как получить первый ключ / значение первого элемента?

$body = $xml->Body;
$xml->Body->children() as $XX=>$ZZ;
echo "x $XX $ZZ\n";
foreach($xml->Body->children() as $k=>$v){
    echo "$k $v\n";
}

1 Ответ

1 голос
/ 08 октября 2009

Может быть сделано через IteratorIterator .
Или (еще проще), обрабатывая возвращаемое значение children () (почти) как массив:

$xml = new SimpleXMLElement('<foo><Body>
  <a>001</a>
  <b>002</b>
  <c>003</c>
</Body></foo>');

$c = $xml->Body->children();
if ( isset($c[0]) ) {
  echo $c->getName(), " : ", (string)$c;
}
...