D'après votre question, ce qui semble être le problème n'est pas tout à fait clair.
Vous utilisez le modèle pour saisir les données, puis vous les transformez en xml comme vous l'avez fait auparavant en utilisant DOMDocument
ou probablement mieux avec XMLWriter
c'est-à-dire
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');
});
Exemple de sortie :
<?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>