Laravel自定义 封装便捷返回Json数据格式的引用方

1. 简介

Laravel是一款优秀的PHP框架,它可以提高Web应用程序的开发效率。在Laravel中,我们可以很方便地返回Json类型的数据,但是默认的Json格式并不够便捷,而且返回的数据格式有时候并不是我们想要的。因此,我们可以给Laravel添加一个便捷的返回Json数据格式的函数,使得我们的代码更加可维护。

2. 自定义返回Json数据格式的函数

2.1 编写helper函数

我们可以在Laravel项目的文件夹下创建一个helpers.php文件,该文件将包含我们编写的自定义函数。在该文件中,我们可以定义一个名为responseJson的函数,用于返回一个指定格式的Json数据。该函数的定义如下:

/**

* 返回Json格式的数据

*

* @param int $code 状态码

* @param string $msg 信息

* @param mixed $data 数据

* @return \Illuminate\Http\JsonResponse

*/

function responseJson($code, $msg, $data = null)

{

return response()->json([

'code' => $code,

'msg' => $msg,

'data' => $data

]);

}

该函数接受三个参数:

code:状态码

msg:信息

data:数据

函数的返回值是一个JsonResponse对象。

2.2 在composer.json中引用helper函数

然后,我们需要在composer.json中引用helper函数。

"autoload": {

"files": [

"app/helpers.php"

]

}

之后,我们用Composer对项目进行加载。

composer dump-autoload

3. 使用自定义返回Json数据格式的函数

在控制器中使用该函数非常简单。首先,我们需要在控制器的头部导入helper函数的文件。

use function App\helpers\responseJson;

然后,我们就可以在需要返回Json数据的位置直接调用responseJson函数了。

public function index()

{

$data = [

'name' => 'Tom',

'age' => 18,

'gender' => 'male'

];

return responseJson(200, 'Success', $data);

}

以上代码将返回以下格式的Json数据:

{

"code": 200,

"msg": "Success",

"data": {

"name": "Tom",

"age": 18,

"gender": "male"

}

}

我们可以将responseJson函数在各个控制器中重复使用,以增强代码的可维护性。

4. 总结

在Laravel中,默认返回的Json数据格式并不是我们想要的。我们可以通过在Laravel项目中添加一个自定义的函数来快速返回我们需要的Json数据格式,提高生产效率。

后端开发标签