WebSphere Message Broker バージョン 8.0.0.5 オペレーティング・システム: AIX、HP-Itanium、Linux、Solaris、Windows、z/OS

製品の最新バージョンについては、IBM Integration Bus バージョン 9.0 をご覧ください。

XML での PHP 配列の使用

PHP 配列は結合配列 (マップ) ですが、キーなしの値を追加することでそれらをリストとして扱うことができます。

PHP は、配列を構築するための以下の構文をサポートします。
$array[] = "aaa";
$array[] = "bbb";
PHP によりオブジェクトは配列として機能することができ、この可能性を利用してツリー内の反復エレメントを作成できます。 以下に例を示します。
$output_root->XMLNSC->a->b->c[] = $input_root->XMLNSC->a->b;
$output_root->XMLNSC->a->b->c[] = $input_root->XMLNSC->a->c;
上記のコードにより、以下のエレメントが作成されます。
<a>
	<b>
		<c>
			... // contents of $input_root->XMLNSC->a->b
		</c>
		<c>
			... // contents of $input_root->XMLNSC->a->c
		</c>
	</b>
</a>
以下の例で示すように、パス内で配列演算子を使用できます。
$output_root->XMLNSC->a->b[]->c = $input_root->XMLNSC->a->b;
$output_root->XMLNSC->a->b[]->c = $input_root->XMLNSC->a->c;
以下のエレメントを作成します。
<a>
	<b>
		<c>
			... // contents of $input_root->XMLNSC->a->b
		</c>
	</b>
	<b>
		<c>
			... // contents of $input_root->XMLNSC->a->c
		</c>
	</b>
</a>

以下の例では配列演算子は使用していません。

$output_root->XMLNSC->a->b->c = $input_root->XMLNSC->a->b;
$output_root->XMLNSC->a->b->c = $input_root->XMLNSC->a->c;

上の例では、以下の XML コードが生成されます。

<a>
	<b>
		<c>
			... // contents of $input_root->XMLNSC->a->c (overwriting previous)
		</c>
	</b>
</a>

以下の例で示すように、foreach ループを使用して一連の反復エレメントを繰り返すこともできます。

foreach ($input_root->XMLNSC->doc->item as $item) {
			$output_root->XMLNSC->msg->bit[] = $this->transformItem($item);
}
この例では、入力メッセージ内の各 item エレメントにつき 1 つの反復 bit エレメントがある出力メッセージを作成します。 各 bit エレメントの内容は、item エレメントをパラメーターとして参照する transformItem 関数によって決定されます。 次のサンプルは、メッセージ変換に使用されるこの構文の例を示しています。

サンプルに関する情報は、WebSphere® Message Broker Toolkit に統合されているインフォメーション・センター、またはオンライン・インフォメーション・センターを使用する場合にのみ表示できます。 サンプルは、WebSphere Message Broker Toolkit に統合されているインフォメーション・センターを使用する場合にのみ実行できます。

サブツリーを作成する方法として、非常にコンパクトな構文を使用して、標準 PHP 配列をエレメント・ツリーに割り当てることができます。 以下の例は、値の配列から反復エレメントを作成する方法を示しています。
$output_root->XMLNSC->doc->item[] = array('aaa', 'bbb', 'ccc');
このコードは、以下の 3 つの項目エレメントを使用してツリーを作成します。
<doc>
	<item>aaa</item>
	<item>bbb</item>
	<item>ccc</item>
</doc>

PHP 配列はリストのように見えますが、キー 01、および 2 の結合配列です。 以下の例は、キー/値のペアをエレメント・ツリーに割り当てる方法を示しています。

$output_root->XMLNSC->doc->item = array('book'  => 'PHP',
                                        'fruit' => 'apple', 
                                        'dog'   => 'Spaniel'   );

項目エレメントに [] 演算子がないと、配列内のキーは子エレメントに名前を付けるために使用されます。

<doc>
	<item>
		<book>PHP</book>
		<fruit>apple</fruit>
		<dog>Spaniel</dog>
	</item>
</doc>

さらに複雑な構造を表すために、配列をネストさせることもできます。 以下に例を示します。

output_root->XMLNSC->doc->items = 
             array('book'  => array('title'  => 'PHP',
                                    'author' => 'A N Other'),
                   'fruit' => 'apple', 
                   'dog'   => array('breed'  => 'Spaniel',
                                    'ears'   => 'long') );

上記の例によって、次の XML コードが生成されます。

<doc>
	<items>
		<book>
			<title>PHP</title>
			<author>A N Other</author>
		</book>	
		<fruit>apple</fruit>
		<dog>
			<breed>Spaniel</breed>
			<ears>long</ears>
		</dog>
	</items>
</doc>
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        最終更新:
        
        最終更新: 2015-02-28 17:46:20


概念トピック概念トピック | バージョン 8.0.0.5 | ac69003_