如何在PHP mysqli中编码JSON输出?
我的PHP代码如下所示如何在PHP mysqli中编码JSON输出?,php,arrays,Php,Arrays,我的PHP代码如下所示 {"messages":"1","login":"ID0111","real_name":"NAME HERE","email":"mail@mail.com","dept":"IT","division":"MDO"} {"messages":"1","login":"ID0112","real_name":"NAME HERE2","email2":"mail@mail.com","dept":"IT","division":"MDO"} test.php 我的问题
{"messages":"1","login":"ID0111","real_name":"NAME HERE","email":"mail@mail.com","dept":"IT","division":"MDO"}
{"messages":"1","login":"ID0112","real_name":"NAME HERE2","email2":"mail@mail.com","dept":"IT","division":"MDO"}
test.php
我的问题是如何修改上面的PHP代码,使JSON输出像这样显示?我的意思是,单次登录有多条消息
{
"login":"ID0111",
"real_name":"NAME HERE",
"messages":
[
{
"refno":"1234",
"email":"mail@mail.com",
"dept":"IT",
"division":"MDO"
},
{
"refno":"1345",
"email":"mail2@mail.com",
"dept":"IT",
"division":"MDO"
},
]
}
如果有人能帮忙,我将不胜感激。谢谢。创建两个数组,在第一个数组中给出login、realname,在第二个数组中给出refno、email、dept、division,然后将第二个数组与第一个数组合并,然后使用json_编码
<?php
$result =array();
$message=array();
$result['login'] ='ID0111';
$result['real_name'] ='NAME HERE';
$message['refno'] ='1234';
$message['email'] ='mail@mail.com';
$message['dept'] ='IT';
$message['division'] ='MDO';
$result['message'] =$message;
echo json_encode($result);
?>
你在循环中退出。我看不出你是如何在输出中得到两行的。因为他对json进行了两次编码。如何将这两个数组组合成一个输出?你能更新你答案中的代码吗?谢谢
<?php
$result =array();
$message=array();
$result['login'] ='ID0111';
$result['real_name'] ='NAME HERE';
$message['refno'] ='1234';
$message['email'] ='mail@mail.com';
$message['dept'] ='IT';
$message['division'] ='MDO';
$result['message'] =$message;
echo json_encode($result);
?>