如何为REST响应创建JSON数组[]?

时间:2020-11-17 作者:Thomy1985

我正在尝试为WordPress中自行开发的API创建REST响应。当前代码为

    $response = array();

    $response[] = array(
        \'version\' => \'1.0\',
        \'user\' => array(
            \'first_name\' => $user->first_name,
            \'last_name\' => $user->last_name,
            \'email\' => $user->user_email,
            \'id\' => $user->ID,
        ),
    );

return rest_ensure_response( $response );
返回(我正在使用用户对象)

[
{
"version": "1.0",
"user": {
    "first_name": "Test",
    "last_name": "User",
    "email": "[email protected]",
    "id": 19
}
}
]
但是我需要这个表格

[
  {
"version": "1.0",
"user": [
    {
        "first_name": "Test",
        "last_name": "User",
        "email": "[email protected]",
        "id": 19,
    }
    ]
  }
]
因此,这里的挑战是如何让[]绕过;用户?“;?

这很可能是一个一般性问题,因为我无法添加;[“和”]"E;手动发送到响应数组

最好的,托马斯

1 个回复
SO网友:Razon Komar Pal

只需使用另一个array() 内部用户array()

$response = array();

$response[] = array(
    \'version\' => \'1.0\',
    \'user\' => array(
        array(
            \'first_name\' => \'Razon\',
            \'last_name\' => \'komar pal\',
            \'email\' => \'[email protected]\',
            \'id\' => 10,
        )
    ),
);

return rest_ensure_response($response);
输出如下:

[
    {
        "version": "1.0",
        "user": [
            {
                "first_name": "Razon",
                "last_name": "komar pal",
                "email": "[email protected]",
                "id": 10
            }
        ]
    }
]
希望这对您有用:)

相关推荐

古登堡缺省值未保存在json中

当我在gutenberg块的属性中设置默认值时,这些值可以在客户端上使用,但在我使用setAttributes更改属性之前,它不会出现在JSON数据中。示例:attributes: { infoButtonText: { type: \'string\', default: \'I am default\' }, }, 编辑功能开始于:function Edit( props ) { const { attributes, s