如何在Laravel API中将数组转换为对象

时间:2019-01-23 07:16:39

标签: php laravel

嗨,首先我要从数据库中以数组的形式获取数据,然后我想将数组数据转换为对象,我尝试了很多功能,但在laravel api中不起作用。我想将数组数据转换为对象,并返回为{{1} } for JSON我在Google上搜索了好几次,但没有找到任何解决方案,对此有任何机构帮助,请提前表示感谢。

对于api,我正在使用此

API

我尝试过

类别是数组return response()->json(['data' => $categories, 'status_code' => 200, 'status' => true],200);

$categories

dd($ data_array); dd($ data_object);

都返回相同的结果

这是结果

    $data_object = (object)$categories; 
    $data_array = (array)$categories;

3 个答案:

答案 0 :(得分:0)

如果最后需要JSON,则可以尝试更改此内容:

$data_object = (object)$categories; 

$data_object = (object)$categories;
$data_object->toJson();
dd($data_object);

我将假设$categories是一个集合数组。然后,您可以json_encode($data_object)

答案 1 :(得分:0)

尝试

$categories = array_map(function($categories){
    return (object)$categories;
}, $categories);

答案 2 :(得分:-1)

如果使用邮递员,则以json格式发送和接收数据。因此,您可以使用json_encode()将数据转换为json格式,并使用json_decode()将数据转换为array()格式。同样在laravel中,您可以通过Request实例获取数据,并通过response()帮助器发送响应,因此,如果您需要以数组格式获取数据,则可以使用以下命令: $ data_array =(array)$ request-> all() 用于发送数据: response()-> json($ data_array,200);

如果要让stdclass使用(对象)而不是数组