MbsElement クラスは、メッセージ内の (または他の論理ツリーの) 単一の構文解析されたエレメントを表します。
MbsElement クラスは、以下の表に示されている API メソッドを提供します (大括弧内のパラメーターはオプションです)。
メソッド | 説明 |
---|---|
Constructor() | 新規 MbsElement オブジェクトをインスタンス化します。 |
object getValue() | 現行エレメントの値を戻します。 |
void setValue(object $value) | 現行エレメントの値を設定します。 |
int getType() | 現行エレメントの固有のタイプを戻します。 タイプの値の完全なリストは、タイプ値の PHP 定数を参照してください。 |
void setType(int $type) | 現行エレメントの固有のタイプを設定します。 タイプの値の完全なリストは、タイプ値の PHP 定数を参照してください。 |
object xpath(string $expression [, array $namespace]) | 現行エレメントをコンテキスト・ノードとして使用して XPath 式を評価します。 結果をストリング、倍精度、ブール、または MbsElement オブジェクトの配列でのノードセットのいずれかで戻します。 オプションの namespace パラメーターは、キーとしてネーム・スペース接頭部があり、値としてネーム・スペース URI がある結合配列です。 |
string getName() | 現行エレメントの名前を戻します。 |
void setName(string $name) | 現行エレメントの名前を設定します。 |
string getNamespace() | 現行エレメントのネーム・スペース URI を戻します。 |
void setNamespace($namespace) | 現行エレメントのネーム・スペース URI を設定します。 |
MbsElement getParent() | 現行エレメントの親を戻します。 |
MbsElement getChild(string $name [, int $occurrence]) | 名前が最初のパラメーターにより付与される、現行エレメントの最初の子を戻します。 2 番目のオプション・パラメーターを指定することによって、子の n 番目のオカレンスを返すことができます。 |
array getChildren([string $namespace]) | 現行エレメントのすべての子エレメントを MbsElements の配列として戻します。 namespace パラメーターが指定された場合、配列にはそのネーム・スペース URI を持つ子エレメントのみが入ります。 |
MbsElement getFirstChild() | 現行エレメントの最初の子を戻します。 |
MbsElement getLastChild() | 現行エレメントの最後の子を戻します。 |
MbsElement getNextSibling() | 現行エレメントの次の兄弟を戻します。 |
MbsElement getPreviousSibling() | 現行エレメントの直前の兄弟を戻します。 |
MbsElement getAttribute(string $name) | name パラメーターにより付与される現行エレメントの属性を戻します。 |
MbsElement addAttribute(string $name, object $value [, string $namespace]) | 属性を現行エレメントに追加します。 |
MbsElement addElement(string $name, object $value [, string $namespace [, int $type [, int $position]]]) | エレメントを現行エレメントの最後の子 (デフォルト) として作成します。 オプションの type パラメーターは、パーサー固有タイプの新規ノードです (XML パーサーの場合は XML エレメント・タイプがデフォルト)。 オプションの position パラメーターは、以下のいずれかの値にすることができます。
|
MbsElement detach() | 現行エレメントをツリーから切り離します。 |
void detachAllChildren() | 現行エレメントのすべての子エレメントを切り離します。 |
string asBitstream([array $options]) | エレメント・ツリーを直列化して、ビット・ストリームを生成します。 MRM パーサー (および他のパーサー) を使用する場合、options 配列には以下のキー/値のペアを取り込む必要があります。
|
void addElementFromBitstream(string $bitstream [, array $options]) | エレメント・ツリーを提供されたビット・ストリームから作成します。 options の提供がない場合、ビット・ストリームは現行エレメントのパーサーを使用して構文解析され、その最後の子として付加されます (この場合、ドメイン・エレメントは作成されません)。 options が提供される場合、それにはキー/値のペア 'domain' => '<parserDomain>' と、MRM パーサーの任意の追加オプションが含まれなければなりません (asBitstream() を参照)。 この場合、パーサー・エレメントは新規サブツリーのヘッドで作成され、現行エレメントの最後の子として付加されます。 |
function transformItem($input) {
$item = new MbsElement;
$item->Desc = $input->Description;
$item->Cost = $input->Price->getValue() * 1.6;
$item->Qty = $input->Quantity;
return $item;
}
以下のコードを使用して、このサブツリーを出力メッセージにコピーできます。$output_assembly->XMLNSC->doc->item = transformItem($input_sub_tree);
ここで、$input_sub_tree は入力メッセージの一部への参照です。