我是一名新的PHP开发人员。我正在使用PHP开发rest服务器。现在我需要返回我的客户端json,结构如下:
{
"id":"45",
"login":"OlegRy",
"image":"no_avatar.png",
"fon":"",
"messages":[
{
id:1,
text:hi
},
{
id:2,
text:how are u?
}
],"subs_login":[]}
请告诉我,实现它的方式
答案 0 :(得分:0)
您可以使用PHP中的array()
创建该数据结构$out = array("id" => "45",
"login" => "OlegRy",
"image" => "no_avatar.png",
"fon" => "",
"messages" => array(
array("id" => 1,
"text" => "hi"
),
array(
"id" => 2,
"t)xt" => "how are u?"
)
),
"subs_login" => array()
);
echo json_encode($out);
附加说明:
如果您正在使用输出缓冲,我建议您在回显json之前使用ob_clean();
。
根据您想要的前端数据格式,您可能希望将JSON_NUMERIC_CHECK与json_encode()一起使用,以防止整数转换为字符串。
echo json_encode($out, JSON_NUMERIC_CHECK);
您可能还希望在回显json后立即exit();
以防止任何进一步的输出,具体取决于您的PHP体系结构。
答案 1 :(得分:0)
这个简单的代码:
$data = array(
'id' => 45,
'login' => 'OlegRy',
'image' => 'no_avatar.png',
'fon' => '',
'messages' => array(
array(
'id' => 1,
'text' => 'hi',
),
array(
'id' => 2,
'text' => 'how are u?',
),
),
'subs_login' => array(
// I dont't know what to put here...
),
);
echo json_encode($data);