在PHP中读取XML文件并将值存储在数组中
我只是PHP的初学者。我只是想确保我所做的是正确的,还是让事情复杂化了,或者在ajax中是否有其他选择 我必须在php中读取一个xml文件,并将其存储在一个数组中以供进一步评估 XML文件是在PHP中读取XML文件并将值存储在数组中,php,xml,Php,Xml,我只是PHP的初学者。我只是想确保我所做的是正确的,还是让事情复杂化了,或者在ajax中是否有其他选择 我必须在php中读取一个xml文件,并将其存储在一个数组中以供进一步评估 XML文件是 > <IntervalReading> > <cost>907</cost> > <timePeriod> > <duration>900</duration> >
> <IntervalReading>
> <cost>907</cost>
> <timePeriod>
> <duration>900</duration>
> <start>1330580700</start>
> <!-- 3/1/2012 5:45:00 AM -->
> </timePeriod>
> <value>302</value> </IntervalReading> <IntervalReading>
> <cost>907</cost>
> <timePeriod>
> <duration>900</duration>
> <start>1330581600</start>
> <!-- 3/1/2012 6:00:00 AM -->
> </timePeriod>
> <value>302</value> </IntervalReading> <IntervalReading>
> <cost>907</cost>
> <timePeriod>
> <duration>900</duration>
> <start>1330582500</start>
> <!-- 3/1/2012 6:15:00 AM -->
> </timePeriod>
> <value>302</value> </IntervalReading>
提前感谢为此,我通常使用php SimpleXML:
它可以从字符串中读取xml结构并返回nice对象。请格式化您的代码。抱歉,无法执行您的示例。发布的XML数据无效(节点混淆,没有根元素)。您的代码产生语法错误。请立即检查..我已经重新发布了它。这是它的基本用法
$doc = new DOMDocument(); $doc->load( "tmp/".$filename ); $employees = array(); $value = array(); $cost = array(); $start = array(); $duration = array(); $doc->formatOutput = true; $employees = $doc->getElementsByTagName( "IntervalReading" ); foreach( $employees as $employee ) {
$names = $employee->getElementsByTagName( "value" );
$val = $value[] = $names->item(0)->nodeValue;
$costs = $employee->getElementsByTagName( "cost" );
$cost[] = $costs->item(0)->nodeValue;
$startnames = $employee->getElementsByTagName( "start" );
$start[] = $startnames ->item(0)->nodeValue;
$durations = $employee->getElementsByTagName( "duration" );
$duration[] = $durations->item(0)->nodeValue; } }