terça-feira, 11 de dezembro de 2007

Transformando Vetor em String no PHP

Esses dias estava mexendo com um sistema de comércio eletrônico, não me lembro se Itaú ou Banco do Brasil, e precisava pegar o retorno de um POST enviado pelo banco para um arquivo no servidor e enviar esse conteúdo por e-mail para posterior avaliação dos dados. Como não é possível enviar um array por e-mail, usei uma função que transforma um array em uma string. Com isto consegui enviar por e-mail o POST e ver quais os dados que estavam sendo passados!

function vetorString($aux1, $aux2, $vetor)
{
foreach($vetor as $chave => $valor) $vetor2[] = $chave.$aux1.$valor;
return implode($aux2, $vetor2);
}

Com esta função, basta fazer uma variável receber o retorno da função:
$msg = vetorString("=", "&", $_POST);

O retorno de um Array ( [a] => 1 [b] => 2 [c] => 3 ) ficaria a=1&b=2&c=3.

1 comentários:

Anônimo disse...

Exite uma forma mais fácil usando a função http_build_query() nativa do php, a partir da versão 5.

Veja um exemplo no meu blog: http://www.flaviogomes.com.br/php-transformando-um-array-em-querystring/

Abração!