0
私はPHPで解析しようとしているXMLファイル(下記)を持っています。XML DOMリストから属性値を取得
<content>
<row label='DEV'>
<cell href="exUrl('URL')" status='0'>12345</cell>
<cell href="exUrl('URL')" status='1'>12345</cell>
<cell href="exUrl('URL')" status='1'>12345</cell>
<cell href="exUrl('URL')" status='1'>12345</cell>
<cell href="exUrl('URL')" status='1'>12345</cell>
</row>
<row label='DEV2'>
<cell href="exUrl('URL')" status='1'>56789</cell>
<cell href="exUrl('URL')" status='1'>56789</cell>
<cell href="exUrl('URL')" status='1'>56789</cell>
<cell href="exUrl('URL')" status='1'>56789</cell>
<cell href="exUrl('URL')" status='0'>56789</cell>
</row>
</content>
私は現在、PHPを使用して、XML文書(以下の例)からいくつかの「行」を合計しています。
$dom = new DOMDocument();
$html = $dom->loadHTMLFile("XML.xml");
$dom->preserveWhiteSpace = false;
$tables = $dom->getElementsByTagName('content');
$rows = $tables->item(0)->getElementsByTagName('row');
foreach ($rows as $row)
{
$cols = $row->getElementsByTagName('cell');
$totalValues += $cols->item(4)->nodeValue;
}
ステータス値を確認するif文を含めるようにforループを更新しましたが、これは動作していないようです。
foreach ($rows as $row)
{
$cols = $row->getElementsByTagName('cell');
$totalValues += $cols->item(4)->nodeValue;
if(($cols->item(4)->getElementsByTagName('status')->nodeValue) == 0) {
$flag = 0;
}
}
ここで間違っていることを助けてくれる人はいますか?
'$ cols-> item(4) - > getAttribute( 'status')== 0' – splash58