Из вывода output1 ниже мы видим, что PHP simplexml_load_file
переводит те же теги index
, что и индексированный массив [0,1,2,3,4]
.
Я хотел бы узнать, как я могу получить индекс из выводаsimplexml_load_file
? Я устал делать это с примером 'php2', и я получил 'output2' в ответ. Возможно ли это или как я могу получить свой вывод, как показано на «Желаемый выход2»? Заранее спасибо
test.xml:
<?xml version="1.0" encoding="utf-8"?>
<Report>
<index><value>h</value></index>
<index><value>e</value></index>
<index><value>l</value></index>
<index><value>l</value></index>
<index><value>o</value></index>
</Report>
php1:
<?php
$oFile = simplexml_load_file("test.xml") or die("error: Cannot create object");
var_dump($oFile);
?>
output1:
object(SimpleXMLElement)#1 (1)
{
["index"]=> array(5)
{
[0]=> object(SimpleXMLElement)#2 (1) { ["value"]=> string(1) "h" }
[1]=> object(SimpleXMLElement)#3 (1) { ["value"]=> string(1) "e" }
[2]=> object(SimpleXMLElement)#4 (1) { ["value"]=> string(1) "l" }
[3]=> object(SimpleXMLElement)#5 (1) { ["value"]=> string(1) "l" }
[4]=> object(SimpleXMLElement)#6 (1) { ["value"]=> string(1) "o" }
}
}
php2:
<?php
$oFile = simplexml_load_file("test.xml") or die("error: Cannot create object");
foreach ($oFile->index as $key=>$value) {
echo $key.': '.$value->value.'<br>';
}
?>
output2:
index: h
index: e
index: l
index: l
index: o
требуемый выход2:
0: h
1: e
2: l
3: l
4: o