Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

yurikguinter

Zend Rest - como salvar a resposta xml?

Recommended Posts

Boa noite a todos galera!

 

Estou com uma dúvida cruel, e ja pesquisei em vários lugares mas não consegui uma resposta para o que preciso.

 

Montei um web service em REST utilizando o Zend, tenho o cliente e o server. Quando o cliente faz a requisição do server chamando o metodo e passando o parametro, o servidor retorna normalmente a resposta:

 

Zend_Rest_Client_Result Object
(
   [_sxml:protected] => SimpleXMLElement Object
       (
           [@attributes] => Array
               (
                   [generator] => zend
                   [version] => 1.0
               )

           [id] => 2
           [primeiroNome] => balhalhezepevubassejo
           [segundoNome] => musonhicowechusisarri
           [sobrenome] => sirevo
           [sexo] => M
           [dataNascimento] => 1993-12-13
           [localNascimento] => chiminhabijo
           [estadoCivil] => cesogissetihikokogorreyaco
           [CPF] => 458.326.886-79
           [RG] => 82.506.841
           [nacionalidade] => defequubunupakuquipipivodafi
           [rua] => xapiliranhussira dadize techavessissuquuchehizo
           [numero] => 266
           [complemento] => dodavulexaxefochowiwozimuyulurrohevonhacezassarizogigossussetulelha
           [CEP] => 10404-028
           [bairro] => socopijelhijepissuni nhogidabigessalato
           [cidade] => nikijilonolhequetarrassanunhalhilhe
           [estado] => siche
           [pais] => bevenhidehesso
           [status] => 1
       )

   [_errstr:protected] => 
)

 

Mas eu precisava fazer com que essa resposta recebida pelo cliente seja transformada em uma string XML para eu salvar em um arquivo ".xml":

 

<?xml version="1.0" encoding="UTF-8"?>
<usuario version="1.0" generator="zend">
<id>1</id>
<primeiroNome>xxxxx</primeiroNome>
<sobrenome>xxxx</sobrenome>
<sexo>M</sexo>
<dataNascimento>1987-10-30</dataNascimento>
<localNascimento>xxxxx</localNascimento>
<estadoCivil>Solteiro</estadoCivil>
<CPF>000.000.000-00</CPF>
<RG>MG-00.000.000</RG>
<nacionalidade>brasileiro</nacionalidade>
<rua>xxxxxxx</rua>
<numero>82</numero>
<complemento>xxxxxxxxxxxx</complemento>
<CEP>37500-096</CEP>
<bairro>xxxxxxxxxxxxx</bairro>
<cidade>xxxxxxxxxxx</cidade>
<estado>xx</estado>
<pais>Brasil</pais>
<status>1</status>
</usuario>

 

 

Client.php

<?php

set_include_path(
   '../zf/library/' 
   . PATH_SEPARATOR . get_include_path()
);
/*
* Incluir o arquivo responsável pela classe
* Zend_Rest_Client
*/
require_once('Zend/Rest/Client.php');

/*
* Instância do objeto da classe Zend_Rest_Client
* Passamos como parâmetro para o construtor a URL
* responsável pelo web service REST
*/
$client = new Zend_Rest_Client('http://localhost/restzend/server.php');

/*
* Invocamos a função usando o método GET
* do protocolo HTTP
*/
$usuario = $client->usuario(2)->get();

 

 

Server.php

 

<?php
require_once('inc/dbConn.php');
set_include_path(
   '../zf/library/' 
   . PATH_SEPARATOR . get_include_path()
);
/*
* Incluir o arquivo responsável pela classe
* Zend_Rest_Server
*/
require_once('Zend/Rest/Server.php');

/*
* Função que iremos disponibilizar através do
* web service REST
* 
* @param int $id
* @return array
*/
function usuario($id)
{
       $query = 'SELECT * FROM usuarios WHERE id = ' . $id . ' LIMIT 1' ;
       $res = mysql_query($query);
       $usuario = mysql_fetch_assoc($res);
   return $usuario;
}


/*
* Instância da classe Zend_Rest_Server
*/
$server = new Zend_Rest_Server();
/*
* Setamos a função metodo1 através do web service
*/
$server->addFunction('usuario');
$server->handle();

 

 

Alguém tem alguma ideia?

 

Vlw's

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.