【问题标题】:Trying to create well formed JSON data from MySQL database using PHP尝试使用 PHP 从 MySQL 数据库创建格式良好的 JSON 数据
【发布时间】:2016-03-24 16:23:00
【问题描述】:

我正在制作一个从 SQL 数据库中提取数据的应用程序。我的 php 代码回显 json 数据,但格式不正确。我当前的输出没有结果数组的名称,我希望它 - 我提供了一个链接,指向我希望输出看起来如何的图片。 任何帮助将不胜感激。

<?php
// database settings 
$db_username = "****";
$db_password = "****";
$db_name = "****";
$db_host = "****";


   //open connection to mysql db
    $connection = mysqli_connect("$db_host","$db_username","$db_password","$db_name") or die("Error " . mysqli_error($connection));

    //fetch table rows from mysql db
    $sql = "select * from markers";
    $result = mysqli_query($connection, $sql) or die("Error in Selecting " . mysqli_error($connection));

    //create an array
    $emparray = array();
    while($row =mysqli_fetch_assoc($result))
    {
        $emparray[] = $row;
    }


$data = array($emparray);

 echo json_encode($data);
    //close the db connection
    mysqli_close($connection);
?>  

Final JSON Current Output

【问题讨论】:

  • 你的意思是:$emparray[$specimenName] = $row?这将使您可以随意设置数组键,而不是 0,1,2,3...
  • 嗯...添加名称?! $data = array('specimens' =&gt; $emparray);
  • 完美,就是这样。抱歉,PHP 新手,所以不知道如何正确命名数组。谢谢一百万!

标签: php mysql json database


【解决方案1】:

如果换行怎么办

$data = array($emparray);

$data = array('markers' => $emparray);

?

它应该输出类似

JSON : {"markers":[{"id":1,"lorem":"ipsum"},{"id":2,"lorem":"dolor"}]}

php > var_dump($test);
array(1) {
  ["markers"]=>
  array(2) {
    [0]=>
    array(2) {
      ["id"]=>
      int(1)
      ["lorem"]=>
      string(5) "ipsum"
    }
    [1]=>
    array(2) {
      ["id"]=>
      int(2)
      ["lorem"]=>
      string(5) "dolor"
    }
  }
}

【讨论】:

  • 就是这样,谢谢!
猜你喜欢
  • 1970-01-01
  • 2021-06-29
  • 1970-01-01
  • 2012-11-19
  • 2013-08-30
  • 1970-01-01
  • 2010-11-08
  • 1970-01-01
  • 2012-01-23
相关资源
最近更新 更多