WebSphere Message Broker, Versão 8.0.0.5 Sistemas operacionais: AIX, HP-Itanium, Linux, Solaris, Windows, z/OS

Consulte as informações sobre a versão mais recente do produto em IBM Integration Bus, Versão 9.0

Usando Matrizes PHP com XML

Matrizes PHP são matrizes associativas (mapas) mas você pode tratá-las como listas adicionando valores sem chaves..

PHP suporta a seguinte sintaxe para construção de matrizes:
$array[] = "aaa";
$array[] = "bbb";
PHP permite que um objeto funcione como uma matriz, e você pode utilizar esta capacidade para criar elementos de repetição em uma árvore. Exemplo:
$output_root->XMLNSC->a->b->c[] = $input_root->XMLNSC->a->b;
$output_root->XMLNSC->a->b->c[] = $input_root->XMLNSC->a->c;
O código mostrado acima cria os seguintes elementos:
<a>
	<b>
		<c>
			... // contents of $input_root->XMLNSC->a->b
		</c>
		<c>
			... // contents of $input_root->XMLNSC->a->c
		</c>
	</b>
</a>
Você pode utilizar o operador de matrizes em um caminho, como mostrado no exemplo a seguir:
$output_root->XMLNSC->a->b[]->c = $input_root->XMLNSC->a->b;
$output_root->XMLNSC->a->b[]->c = $input_root->XMLNSC->a->c;
para criar os seguintes os elementos:
<a>
	<b>
		<c>
			... // contents of $input_root->XMLNSC->a->b
		</c>
	</b>
	<b>
		<c>
			... // contents of $input_root->XMLNSC->a->c
		</c>
	</b>
</a>

Os exemplos a seguir não utilizam nenhum operador de matriz:

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

O exemplo acima produz o seguinte código XML:

<a>
	<b>
		<c>
			... // contents of $input_root->XMLNSC->a->c (sobrescrevendo o anterior)
		</c>
	</b>
</a>

Também é possível iterar um conjunto de elementos de repetição usando um loop foreach, conforme mostrado no seguinte exemplo:

foreach ($input_root->XMLNSC->doc->item as $item) {
			$output_root->XMLNSC->msg->bit[] = $this->transformItem($item);
}
Este exemplo contrói uma mensagem de saída com um elemento de repetição bit, um para cada elemento item na mensagem de entrada. O conteúdo de cada elemento de bit é determinado pela função transformItem, que se refere ao elemento do item como seu parâmetro. A amostra a seguir mostra um exemplo desta sintaxe sendo usada para a transformação da mensagem:

Você só pode visualizar informações sobre amostras quando usa o centro de informações que está integrado ao WebSphere Message Broker Toolkit ou o centro de informações on-line. Você só poderá executar amostras quando usar o centro de informações que está integrado ao WebSphere Message Broker Toolkit.

É possível designar matrizes PHP padrão para uma árvore de elementos como uma maneira de construir subárvores usando uma sintaxe muito compacta. O exemplo a seguir mostra como construir um elemento de repetição de uma matriz de valores:
$output_root->XMLNSC->doc->item[] = array('aaa', 'bbb', 'ccc');
Este código constrói uma árvore com três elementos de itens:
<doc>
	<item>aaa</item>
	<item>bbb</item>
	<item>ccc</item>
</doc>

Apesar de a matriz PHP parecer uma lista, é uma matriz associativa com as chaves 0, 1, e 2. O exemplo a seguir mostra como designar pares de chaves/valores a árvore de elementos:

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

Sem o operador [] no elemento do item, as chaves da matriz são utilizadas para nomear elementos filho:

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

Você também pode aninhar matrizes para representar estruturas mais complexas. Por exemplo:

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

O exemplo precedente produz o seguinte código 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>
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

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

        
        Última atualização:
        
        Última atualização: 2015-02-28 18:29:00


Tópico de ConceitoTópico de Conceito | Versão 8.0.0.5 | ac69003_