如何在PHP mysqli中编码JSON输出?

如何在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 我的问题

我的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);


  ?>