是否可以获得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;
答案 0 :(得分:0)
我不使用simplexml
,所以不能建议使用哪种方法,但是使用标准的DOMDocument
及其相关方法,从显示的XML中获取name
属性值是相当简单的问题。
$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
答案 1 :(得分:0)
按原本的方式使用SimpleXML很简单。如果只需要Total值,则可以使用XPath来获取具有antwoord
属性的name
元素,该属性的值为Total
。 xpath()
调用返回匹配元素的列表,因此请使用[0]
获取第一个元素。还会返回一个SimpleXMLElement,因此要确保该值是一个字符串,请在使用该值之前将其强制转换为(string)
。
$xml = simplexml_load_file($url);
$total = $xml->xpath("//antwoord[@name='Total']")[0];
echo (string)$total;
给予...
9,0