Add the method "xml" integrating the laravel's response, converting eloquent return to XML.
composer require jailtonsc/laravel-response-xml
Add in config/app.php in place providers
XmlResponse\XmlResponseServiceProvider::class
Add in config/app.php in place aliases
'Xml' => XmlResponse\Facades\XmlFacade::class
php artisan vendor:publish
Route::get('/', function () {
return response()->xml(User::all());
});
With status code
Route::get('/', function () {
return response()->xml(User::all(), 404);
});
Setting by code
$config = [
'template' => '<test></test>',
'rowName' => 'name'
];
Route::get('/', function () {
return response()->xml(User::all(), 200, $config);
});
Return string xml
$xml = Xml::asXml(User::all());
Or
$config = [
'template' => '<test></test>',
'rowName' => 'name'
];
$xml = Xml::asXml(User::all(), $config);
file config/xml.php
template: xml template.
caseSensitive: case sensitive xml tag.
showEmptyField: Show empty field.
charset: encoding.
rowName: line name if it is an array.
The Laravel Response XML is open-sourced software licensed under the MIT license