evandarwin / jsend
Basic JSend interface for PHP projects.
Installs: 13 289
Dependents: 1
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 0
Open Issues: 0
Type:project
Requires
- php: >=7.2.0
README
A tiny PHP library that generates JSON responses based on the original JSend specification.
The specification has been slightly modified to make use for APIs, in which the are now optional code
and message
attributes. Both are meant to be human readable, and will not show up if not supplied.
Version 2.x requires PHP 7.2+ If you need support for PHP >= 5.6, use the 1.x branch.
Installation
Install JSend via Composer:
$ composer require evandarwin/jsend
Usage
You can use JSend like so:
<?php use EvanDarwin\JSend\JSendBuilder; $builder = new JSendBuilder(); // This will return a JSendResponse $response = $builder->success() ->data(['id' => 3]) ->code(12) ->message("Hello") ->get(); // Output the JSON header('Content-Type: application/json'); echo $response->getResponse();
And the response will be formed like so:
{ "status": "success", "message": "Hello", "code": 12, "data": { "id": 3 } }
Alternative statuses include:
- fail - For when the user has done something wrong, and they should fix it before requesting again.
- error - An internal server error or something that's not the issue of the user's request
<?php use EvanDarwin\JSend\JSendBuilder; // These alternatives statuses can be set like so $builder = new JSendBuilder(); // For failure $builder->failed()->get(); // For error $builder->error()->get();
License
Licensed under the MIT license. See the LICENSE file for information.