Я получаю доступ к api и считываю содержимое с помощью элемента Simplexml. Но когда im использует цикл foreach для доступа к значениям для узлов. Он дает мне значение только для первого цикла.not для других. ... ниже мой кодforeach loop не работает для simplexmlelement в php
<?php
include('connection.php');
header("Content-Type: text/xml;");
function httpGet($url)
{
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
// curl_setopt($ch,CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'header1:value1',
'header2:value2'
));
$output=curl_exec($ch);
curl_close($ch);
return $output;
}
$data= httpGet("http://apiurl");
$xml = new SimpleXMLElement($data);
foreach ($xml->node1->node2->node3 as $info) {
echo $info->name, ' played by ', $info->actor, PHP_EOL;
}
?>
XML формат, который им чтение
<?xml version='1.0' standalone='yes'?>
<main>
<node1>
<title>PHP: Behind the Parser</title>
<node2>
<node3>
<name>Ms. Coder</name>
<actor>Onlivia Actora</actor>
</node3>
</node2>
<node2>
<node3>
<name>Mr. Coder</name>
<actor>El ActÓr</actor>
</node3>
</node2>
</node1>
</main>
Когда им работает над PHP код для чтения содержимого апи, который, имеющий формат XML, как показано выше. Я хочу прочитать имя и узел-актер, используя foreach loop.but im не сможет получить доступ только к имени и узлу-актеру под узлом3, а не ко второму .... Пожалуйста, исправьте цикл foreach или любой недостаток кода. выделить и мне помочь в исправлении, что ....
, что происходит, когда вы Foreach ($ xml-> node1-> node2-> node3 в $ ключ = значение $) {var_dump $ key} – user3750649
Мне жаль, что я вклеил неполный xml format.now скорректировал и выполнил это. Пожалуйста, подтвердите еще раз –