PHPでXML形式から配列に変換する

名前空間のないものであればわりと簡単に変換できる。

sample.xml
<?xml version="1.0" encoding="UTF-8"?>
<articles>
<article>
<date>2024/09/27 09:00:00</date>
<comment>やっぱりきょうもねむい</comment>
</article>
<article>
<date>2024/09/26 09:00:00</date>
<comment>きょうもすごくねむい</comment>
</article>
<article>
<date>2024/09/25 09:00:00</date>
<comment>きょうもねむい</comment>
</article>
</articles>
//jsonに変換してしまう
$xml = simplexml_load_file('./sample.xml');
$json = json_decode(json_encode($xml), true);
var_dump($json);

一応出力の方法も。

foreach($json as $keys => $values) {
foreach($values as $key => $value) {
echo '<p>date: ' .$value['date']. '<br>';
echo '<p>comment: ' .$value['comment']. '</p>'."\n";
}
}