Usare XML con Lumen
Lumen è un framework derivato da Laravel usato principalmente per la costruzione di servizi di REST.
Da quanto ho capito, supporta solo l'output in formato JSON.
Per me non ci sono grossi problemi visto che lo preferisco a XML; ma oggi mi è servito proprio questo formato.
Ho scoperto che è possibile usarlo attraverso un'estensione (usabile anche in Laravel): laravel-formatter!
Come potete vedere dalla documentazione, supporta vari tipi di output.
Per installarlo, entrate nella directory del progetto e date questo comando:
$ cd project
$ composer require soapbox/laravel-formatter
Questo il mio controller, che esegue una query e manda l'output in formato XML:
namespace App\Http\Controllers;
use Illuminate\Support\Facades\DB;
use SoapBox\Formatter\Formatter;
class StDocRigheController extends Controller {
public function getVendutoSettimaneInNegozi($anno) {
$jsonString = DB::select('CALL sp_get_st_venduto_settimane_in_negozi(?)', [$anno]);
$formatter = Formatter::make($jsonString, Formatter::XML);
return $formatter->toXml();
}
}
Enjoy!
php lumen controller autenticazione laravel-formatter xml soapbox
Commentami!