sql >> Base de Datos >  >> RDS >> Mysql

¿Cómo puedo almacenar datos de mysql a XML en Laravel 5?

A partir de su pregunta, no queda muy claro cuál parece ser el problema.

Usas el modelo para capturar los datos y luego los conviertes en xml como lo has hecho antes usando DOMDocument o probablemente mejor con XMLWriter es decir,

use Illuminate\Support\Facades\Response;
use App\User;

Route::get('/users/xml', function() {
    $users = User::all();

    $xml = new XMLWriter();
    $xml->openMemory();
    $xml->startDocument();
    $xml->startElement('users');
    foreach($users as $user) {
        $xml->startElement('data');
        $xml->writeAttribute('id', $user->id);
        $xml->writeAttribute('firstname', $user->firstname);
        $xml->writeAttribute('lastname', $user->lastname);
        $xml->writeAttribute('email', $user->email);
        $xml->endElement();
    }
    $xml->endElement();
    $xml->endDocument();

    $content = $xml->outputMemory();
    $xml = null;

    return response($content)->header('Content-Type', 'text/xml');
});

Salida de muestra:

<?xml version="1.0"?>
<users>
  <data id="1" firstname="John" lastname="Doe" email="[email protected]"/>
  <data id="2" firstname="Mark" lastname="Lee" email="[email protected]"/>
  <data id="3" firstname="Jane" lastname="Doe" email="[email protected]"/>
</users>