kosmosx / laravel-response
Response service for Laravel and Lumen Framework.
Installs: 91
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
Type:package
Requires
- php: >=7.1.3
- kosmosx/helpers: ~1.0
- kosmosx/response: ~1.0
This package is auto-updated.
Last update: 2024-10-25 07:24:45 UTC
README
Let's go
Composer
composer require kosmosx/laravel-response
Laravel / Lumen register providers
Kosmosx\Response\Laravel\ResponseServiceProvider
Register handler Execptions (LaravelHandler or LumenHandler)
$this->app->singleton(
\Illuminate\Contracts\Debug\ExceptionHandler::class,
\Kosmosx\Response\Laravel\Exceptions\.....::class
);
Use
use Kosmosx\Response\RestResponse;
use RestResponse; //Facade alias
use FactoryResponse; //Or use factory class
Benchmark
Same PC hardware (RAM: 16GB (2x8 GB) DDR4 2133 MHz, CPU: Intel Core i5 7400 Quad Core & 4 Thread 3.0GHz)
Illuminate/Response
Response weight 4.26Mb in 158~161ms
$app = array();
for ($x = 0; $x <= 1000; $x++) {
$app[$x] = new JsonResponse(array('data'=>[true,false], "message" => 'Microservice Lumen work', "state" => "OK"));
}
return var_dump($app);
Kosmosx/Response
Response weight 3.6Mb in 148~151ms
$app = array();
for ($x = 0; $x <= 1000; $x++) {
$app[$x] = new RestResponse(array('data'=>[true,false], "message" => 'Microservice Lumen work', "state" => "OK"));
}
return var_dump($app);
Response weight 3.6Mb in 220~223ms
$app = array();
for ($x = 0; $x <= 1000; $x++) {
$app[$x] = $this->response->success()
->withMessage('Microservice Lumen work')
->withData(true)
->withData(false)
->withState();
}
return var_dump($app);
Results
Kosmosx/Response it is 15.50% smaller than Illuminate
Kosmosx/Response it is 6.3% faster than Illuminate (if use constructor)
en: documentation
it: documentazione
If you find a bug or want to contribute, write to developer@fabriziocafolla.com