java - php以JSON形式回显多维数组

标签 java php arrays json list

我正在尝试以数组中的JSON形式显示数据库中的所有用户。这就是我所拥有的 - 但它不是我想要的形式

{
  "username": [
    "bobgreen",
    "jacksmitd",
    "samson",
  ]
  "forename": [
    "Bob",
    "Jack",
    "Sam",
  ],
  "surname": [
    "O'Conor",
    "Smitd",
    "Son",
  ]
}

这是我的代码,给出了这个输出...

if(mysqli_num_rows($outcome)){
    while($row = mysqli_fetch_assoc($outcome)){
        $finalOutcome["username"][] = $row["username"];
        $finalOutcome["forename"][] = $row["forename"];
        $finalOutcome["surname"][] = $row["surname"];
    }
    echo json_encode($finalOutcome); 
}

我想将所有相关详细信息存储在大括号内,如下所示:

{
    "username":"bobgreen"
    "forename":"Bob"
    "surname":"O'Conor"
}
{
    "username":"jacksmitd"
    "forename":"Jack"
    "surname":"Smitd"
}
{
    "username":"samson"
    "forename":"Sam"
    "surname":"Son"
}

另外,如何从每个大括号中提取所有相关数据并将其存储在 Java 中的列表中?因为我试图存储每个用户的所有详细信息,但我不确定如何使用我的第一个 JSON 数组

最佳答案

关于主要问题:

您必须使用以下语法:

while( $row = mysqli_fetch_assoc( $outcome ) )
{
    $finalOutcome[] = array
    (
        "username" => $row["username"],
        "forename" => $row["forename"],
        "surname"  => $row["surname"]
    );
}
echo json_encode( $finalOutcome );

实质上,在原始查询中,您增加了 $finalOutcome 子数组,而不是 $finalOutcome

关于java - php以JSON形式回显多维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35471075/

相关文章:

php - Laravel 4 中未找到 Controller 路由

ruby - 在 Ruby 中迭代多维数组

python - 比较数组的准确性

java - 如何在 3D 应用程序中定义和标准化单位?

Java Spark : com. mongodb.spark.config.writeconfig 问题

java - MySQL > java.sql.SQLException : Plugin '*765C23FCC8127A2234DBCFB6E5207D82ED86264E' is not loaded

ios - 在 Swift 中修改数组,(通过下标语法插入和追加)

java - JRuby - 使用 SLF4J

php - mysql 改变表顺序不工作

c# - 使用 SQL 的 Unity 3D 安全身份验证