是否有可能获得 attribute:
name="Total"
和 value
?
我知道在数组中是可能的,但行并不总是相同的。
这是 XML:
<XML>
<resultaten>
<resultaat>
<id>3123709</id>
<antwoord name="Total">9,0</antwoord>
<antwoord name="Communicatie">9,0</antwoord>
<antwoord name="Advies">9,0</antwoord>
<antwoord name="Deskundigheid">9,0</antwoord>
<antwoord name="Betrokkenheid">9,0</antwoord>
<antwoord name="Gemiddelde">9,0</antwoord>
</resultaat>
</resultaten>
</XML>
我试过这个:
$xml = simplexml_load_file($url)
$date = $xml->resultaten->resultaat->attributes();
echo $date;
最佳答案
我不使用 simplexml
所以不能建议它的方法,而是使用标准 DOMDocument
和它的相关方法获得 name
相当简单来自您在问题中显示的 XML 的属性值。
$xml='<XML>
<resultaten>
<resultaat>
<id>3123709</id>
<antwoord name="Total">9,0</antwoord>
<antwoord name="Communicatie">9,0</antwoord>
<antwoord name="Advies">9,0</antwoord>
<antwoord name="Deskundigheid">9,0</antwoord>
<antwoord name="Betrokkenheid">9,0</antwoord>
<antwoord name="Gemiddelde">9,0</antwoord>
</resultaat>
</resultaten>
</XML>';
$dom=new DOMDocument;
$dom->loadXML( $xml );
$col=$dom->getElementsByTagName('antwoord');
foreach( $col as $node )echo $node->getAttribute('name') . '<br />';
输出:
Total
Communicatie
Advies
Deskundigheid
Betrokkenheid
Gemiddelde
更新
要使用 url 而不是字符串,只需使用
load
方法如下。 $url='https://klantenvertellen.nl/xml/van_essen_advocaten';
$dom=new DOMDocument;
$dom->load( $url );
$col=$dom->getElementsByTagName('antwoord');
foreach( $col as $node )echo $node->getAttribute('name') . '<br />';
输出:
datum
referentie
Uw voornaam/bedrijf:
Aanbeveling:
Geholpen door:
Ervaring:
Totaal oordeel
Communicatie
Advies
Deskun....etc
关于php - 在 php 中获取 xml 命名空间属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54607086/