tan-sandbox/json-rest

JSON响应构建器。

0.8.2 2017-07-28 09:45 UTC

This package is not auto-updated.

Last update: 2024-09-29 02:34:11 UTC


README

PHP的JSON响应构建器库。

安装

Composer

将以下内容添加到您的composer.json文件中或创建一个新的composer.json文件

{
    "require": {
        "tansandbox/json-rest": "*"
    }
}

运行以下命令让Composer下载库

$ php composer.phar install

使用composer require包含库,从您的项目中运行以下命令。

$ php composer.phar require tansandbox/json-rest

基本用法

创建对象

use TanSandbox\JsonRest\Builder;
$builder = new Builder() ;

返回成功响应

$data = array (
    'name' => 'Nithin',
    'subject' => 'English',
    'mark' => '90'
);
$builder->ok()->send($data) ;

将生成

{
    "status": true,
    "data": {
        "name": "Nithin",
        "subject": "English",
        "mark": "90"
    }
}

返回失败

$data = array(
    'name' => 'Please provide a valid name'
);
$builder->fail()->send($data) ;

将生成

{
    "status": false,
    "data": {
        "name": "Please provide a valid name"
    }
}

带有自定义HTTP状态的响应

$data = array(
    'reply' => 'Resource not found.'
);
$builder->setStatus(404)->send($data) ;

将生成

{
    "status": false,
    "data": {
        "reply": "Resource not found."
    }
}

高级响应

$data = array (
    'name' => 'Nithin',
    'subject' => 'English',
    'mark' => '90'
);
$builder->setMessage('Action completed')->setStatus(200)->send($data) ;

将生成

{
    "status": false,
    "data": {
        "name": "Nithin",
        "subject": "English",
        "mark": "90"
    },
    "message": "Action completed"
}

方法链。

可以使用setXXX方法添加新的JSON成员。sendie()方法用于输出响应并在之后终止程序。

$builder->setName('Nithin')
    ->setSubject('English')
    ->setMark('90')
    ->setCustomNotes('Student of ZF2')
    ->sendie() ;

将生成

{
    "status": true,
    "message": "Action completed",
    "name": "Nithin",
    "subject": "English",
    "mark": "90",
    "customNotes": "Student of ZF2"
}