Guzzle dio cuenta de la PSR-7. Esto significa que el cuerpo del mensaje será por defecto se almacena en el uso temporal flujo de corriente PHP. Para recuperar todos los datos, el operador de conversión puede ser utilizado.
Ejemplo:
$client = new Client($this->getOptions());
$response = $client->request($method, $url, $options);
Podemos tener dos valores de la siguiente manera:
$contents = (string) $response->getBody();
// or
$contents = $response->getBody()->getContents();
La diferencia entre los dos métodos es el uso de
getContents
este método consiste en devolver el resto del contenido, por lo que la segunda llamada no devuelve nada, a menos que utilice elrewind
método o encontrar la ubicación de la corrienteseek
método fluirá puntero rebobinar la posición inicial.
$stream = $response->getBody();
$contents = $stream->getContents(); // returns all the contents
$contents = $stream->getContents(); // empty string
$stream->rewind(); // Seek to the beginning
$contents = $stream->getContents(); // returns all the contents
Por el contrario, la operación de conversión de cadenas de PHP, se leerá en todos los flujos de datos desde el principio hasta el final.
$contents = (string) $response->getBody(); // returns all the contents
Documentación: http://docs.guzzlephp.org/en/latest/psr7.html#responses
Referencia: https://stackoverflow.com/questions/30549226/guzzlehttp-how-get-the-body-of-a-response -desde-Guzzle-6