Php 如果XML有1个不同的子名称,则从XML中检索节点值,其余值相等
我有一个这样的XML文件Php 如果XML有1个不同的子名称,则从XML中检索节点值,其余值相等,php,xml,Php,Xml,我有一个这样的XML文件 <report> <table> <columns> <column name="dateTime"/> <column name="userLogin"/> <column name="campaignName"/> <column name="adGroupName"/>
<report>
<table>
<columns>
<column name="dateTime"/>
<column name="userLogin"/>
<column name="campaignName"/>
<column name="adGroupName"/>
<column name="changes"/>
</columns>
<row dateTime="Aug 13, 2013 11:56:34 PM" userLogin="hello123" campaignName="Search Exact Parts - 2012 USA" adGroupName="12 volt razor battery" changes="Text ad changed Status changed from Enabled to Paused"/>
<row dateTime="Aug 13, 2013 11:56:34 PM" userLogin="hello123" campaignName="Search Exact Parts - 2012 USA" adGroupName="Razor Quad Battery" changes="Text ad changed Status changed from Enabled to Paused"/>
<row dateTime="Aug 13, 2013 11:56:34 PM" userLogin="hello123" campaignName="Search Exact Parts - 2012 USA" adGroupName="Razor Quad Tires" changes="Text ad changed Status changed from Enabled to Paused"/>
<row dateTime="Aug 13, 2013 11:56:34 PM" userLogin="hello123" campaignName="Search Exact Parts - 2012 USA" adGroupName="Razor Replacement Battery" changes="Text ad changed Status changed from Enabled to Paused"/>
<row dateTime="Aug 13, 2013 11:56:34 PM" userLogin="hello123" campaignName="Search Exact Parts - 2012 USA" adGroupName="Razor.com" changes="Text ad changed Status changed from Enabled to Paused"/>
</table>
</report>
此代码仅读取第一行值,即“2013年8月13日11:56:34 PM”
就连我也尝试了我知道的所有可能的方法。但我无法以正确的方式找回方法。如果有人能解决这个问题,我将非常感激 使用
xpath
选择所有
节点的datetime
属性:
$results = $xml->xpath("//row/@dateTime");
看看他们所有人:
foreach ($results as $result) echo "$result <br />";
foreach($results as$result)回显“$result
”;
谢谢。我的问题解决了。我使用的是$data[]=$value->row['dateTime'];而不是使用foreach($value->row as$fougen){$data1=$fougen[$feilds[0]];}
foreach ($results as $result) echo "$result <br />";