PHP SimpleXML による XMLの読み込み

AICA研究室 國分 元樹
2009年10月15日

今日は皆さんにPHPによるXMLの参照(読み込み)について、
紹介したいと思います。

<?php
	$xml_string = <<<XML
	<root>
		<Fruit id="001">
			<Name>リンゴ</Name>
			<From>青森</From>
		</Fruit>
		<Fruit id="002">
			<Name>バナナ</Name>
			<From>沖縄</From>
		</Fruit>
		<Fruit id="003">
			<Name>ブドウ</Name>
			<From>山梨</From>
		</Fruit>
		<Fruit id="004">
			<Name>イチゴ</Name>
			<From>栃木</From>
		</Fruit>
	</root>
XML;
?>
<?php 
	$xml = simplexml_load_string($xml_string);
?>
<dl>
<?php
	foreach($xml->Fruit as $Seika)
	{
		print "<dt>".$Seika->Name."(".$Seika["id"].")</dt>";
		print "<dd>".$Seika->From."</dd>";
	}
?>
</dl>
このコードで下記のような結果を出力できます
PHPでXML読み込み
エレメント(Node)へのアクセス
「->ノード名」を利用してアクセスする事が出来ます。
属性(Attribute)へのアクセス
["属性名"]を利用して参照する事が出来ます。

今回の例はPHP内にXMLも宣言してしまう方法ですが、
外部ファイルを読み込む場合は
$xml = simplexml_load_file("ファイル名相対パス");
を使用してください。

著者プロフィール

國分 元樹

所属学科 : SE専攻科 3年

研究室では主にPHPやASP.NETなどのサーバーサイドを任されることが多いです。
一応AICA研究室の室長を勤めています。