21 lines
553 B
PHP
21 lines
553 B
PHP
<?php
|
|
namespace ProVM\Common\Define\Controller;
|
|
|
|
use Psr\Http\Message\ResponseInterface as Response;
|
|
|
|
trait Json {
|
|
public function withJSON(Response $request, $data, bool $format = true): Response {
|
|
if (!is_string($data)) {
|
|
$enc = 0;
|
|
if ($format) {
|
|
$enc = \JSON_PRETTY_PRINT | \JSON_UNESCAPED_UNICODE | \JSON_UNESCAPED_SLASHES;
|
|
}
|
|
$data = json_encode($data, $enc);
|
|
}
|
|
$request->getBody()->write($data);
|
|
return $request
|
|
->withHeader('Content-Type', 'application/json')
|
|
->withStatus(201);
|
|
}
|
|
}
|