Php SimpleXML低级变量
我正在用simple_xml_load_file()逐级解析一个文件。以下是示例结构:Php SimpleXML低级变量,php,xml,simplexml,Php,Xml,Simplexml,我正在用simple_xml_load_file()逐级解析一个文件。以下是示例结构: <person name="Joe Smith" ...> <info age="19"> <height val="1.85" /> </info> <info age="19"> <weight val="82" /> </info> <info age="19"&g
<person name="Joe Smith" ...>
<info age="19">
<height val="1.85" />
</info>
<info age="19">
<weight val="82" />
</info>
<info age="19">
<build val="14" />
</info>
</person>
...
这应该可以做到:
foreach($dom->person as $person){
$name=$person['name'];
foreach($person->info as $info) {
echo $info['age'] . '<br>';
}
}
foreach($dom->person as$person){
$name=$person['name'];
foreach($person->info as$info){
echo$info['age']。
;
}
}
或者,如果你想在某个特定职位上获得一个年龄:
echo $person->info[0]['age']; // Gets age attribute of first <info> node
echo$person->info[0]['age'];//获取第一个节点的年龄属性
这应该可以完成以下工作:
foreach($dom->person as $person){
$name=$person['name'];
foreach($person->info as $info) {
echo $info['age'] . '<br>';
}
}
foreach($dom->person as$person){
$name=$person['name'];
foreach($person->info as$info){
echo$info['age']。
;
}
}
或者,如果你想在某个特定职位上获得一个年龄:
echo $person->info[0]['age']; // Gets age attribute of first <info> node
echo$person->info[0]['age'];//获取第一个节点的年龄属性
这应该可以完成以下工作:
foreach($dom->person as $person){
$name=$person['name'];
foreach($person->info as $info) {
echo $info['age'] . '<br>';
}
}
foreach($dom->person as$person){
$name=$person['name'];
foreach($person->info as$info){
echo$info['age']。
;
}
}
或者,如果你想在某个特定职位上获得一个年龄:
echo $person->info[0]['age']; // Gets age attribute of first <info> node
echo$person->info[0]['age'];//获取第一个节点的年龄属性
这应该可以完成以下工作:
foreach($dom->person as $person){
$name=$person['name'];
foreach($person->info as $info) {
echo $info['age'] . '<br>';
}
}
foreach($dom->person as$person){
$name=$person['name'];
foreach($person->info as$info){
echo$info['age']。
;
}
}
或者,如果你想在某个特定职位上获得一个年龄:
echo $person->info[0]['age']; // Gets age attribute of first <info> node
echo$person->info[0]['age'];//获取第一个节点的年龄属性
没有其他循环的其他方法吗?有大量的信息标签,我担心如果文件太大,会降低性能。有没有其他方法可以不用另一个循环?有大量的信息标签,我担心如果文件太大,会降低性能。有没有其他方法可以不用另一个循环?有大量的信息标签,我担心如果文件太大,会降低性能。有没有其他方法可以不用另一个循环?有大量的信息标签,我担心如果文件太大,会降低性能。