栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > PHP

JsonResponse.php

PHP 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JsonResponse.php

 

namespace IlluminateHttp;

 

use JsonSerializable;

use InvalidArgumentException;

use IlluminateContractsSupportJsonable;

use IlluminateContractsSupportArrayable;

use SymfonyComponentHttpFoundationJsonResponse as baseJsonResponse;

 

class JsonResponse extends baseJsonResponse

{// a json response  extends base Json response

    use ResponseTrait;// use Response Trait

   // a trait

 

   

    protected $jsonOptions;// The json encoding options

 

   

    public function __construct($data = null, $status = 200, $headers = [], $options = 0)

    {

        $this->jsonOptions = $options;

 

        parent::__construct($data, $status, $headers);

    }// a constructor about instance of the response

   // more type response

 

   

    public function getData($assoc = false, $depth = 512)

    {

        return json_decode($this->data, $assoc, $depth);// a json decode method

    }// Get the json_decoded data from the response.

 

   

    public function setData($data = [])

    {

        if ($data instanceof Arrayable) {

            $this->data = json_encode($data->toArray(), $this->jsonOptions);// array

        } elseif ($data instanceof Jsonable) {

            $this->data = $data->toJson($this->jsonOptions);// to json

        } elseif ($data instanceof JsonSerializable) {

            $this->data = json_encode($data->jsonSerialize(), $this->jsonOptions);// to serialize

        } else {

            $this->data = json_encode($data, $this->jsonOptions);

        }

 

        if (JSON_ERROR_NONE !== json_last_error()) {

            throw new InvalidArgumentException(json_last_error_msg());

        }// JSON_ERROR_NONE

 

        return $this->update();

    }// set Data inert into the

 

   

    public function getJsonOptions()

    {

        return $this->jsonOptions;

    }// get Json Options

 

   

    public function setJsonOptions($options)

    {

        $this->jsonOptions = $options;// set the options

 

        return $this->setData($this->getData());// and set Data

    }// set Json Options

}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/228323.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号