如何从mysql检索php数据并将其转换为json?

如何从mysql检索php数据并将其转换为json?,php,json,Php,Json,当我尝试开发这个时,我的思维被卡住了: 我的数据库中有一个名为article的表,有两列,分别是name和price。 如何从表中提取所有行并在JSON中回显所有列? 我真的不明白如何在JSON中转换结果。我的心从来没有像现在这样被卡住过。我需要这样回应: {"items": { "items":[ {"name": "firstitemname", "price": "5" }, {"name": "secondone

当我尝试开发这个时,我的思维被卡住了: 我的数据库中有一个名为article的表,有两列,分别是name和price。 如何从表中提取所有行并在JSON中回显所有列? 我真的不明白如何在JSON中转换结果。我的心从来没有像现在这样被卡住过。我需要这样回应:

{"items": {
    "items":[
        {"name": "firstitemname", 
         "price": "5"
        },
        {"name": "secondone", 
         "years": "3"
        }],
}}
$query = mysql_query("SELECT * FROM itemlist");
$json_output = array();
while($row = mysql_fetch_assoc($query)){
    $json_output[] = json_encode($row);
}
请帮我修复我的错误代码

<?php

$query = mysql_query("SELECT * FROM itemlist");
$nameitem = array();
$itemprice = array();
while($row = mysql_fetch_array($query)){
array_push($nameitem , $row['nome']);
array_push($itemprice, $row['pix']);
}

?>

您只需按如下方式编辑PHP

<?php

$query = mysql_query("SELECT * FROM itemlist");
$items = array();
while($row = mysql_fetch_array($query)){
$items[] = array('name' => $row['nome'], 'price' => $row['pix']);
}

echo json_encode(array('items'=>$items));

?>    

JSON在PHP中非常容易处理。

您只需按如下方式编辑PHP即可

<?php

$query = mysql_query("SELECT * FROM itemlist");
$items = array();
while($row = mysql_fetch_array($query)){
$items[] = array('name' => $row['nome'], 'price' => $row['pix']);
}

echo json_encode(array('items'=>$items));

?>    

JSON在PHP中非常容易处理。

如果您使用的是PHP 5.2或更高版本,您可以使用JSON_encode函数来完成您想要做的事情:

对于您的代码,您应该能够执行以下操作:

{"items": {
    "items":[
        {"name": "firstitemname", 
         "price": "5"
        },
        {"name": "secondone", 
         "years": "3"
        }],
}}
$query = mysql_query("SELECT * FROM itemlist");
$json_output = array();
while($row = mysql_fetch_assoc($query)){
    $json_output[] = json_encode($row);
}

这里,$json_输出将包含一个字符串数组,每行的json编码字符串作为每个数组元素。您可以随心所欲地输出这些内容。

如果您使用的是PHP 5.2或更高版本,您可以使用json_encode函数来完成您想要做的事情:

<?php
$result = mysql_query("select * from item_list");
$rows = array();
while($r = mysql_fetch_assoc($result))
{
$rows[] = $r;
}
print json_encode($rows);
?>
对于您的代码,您应该能够执行以下操作:

{"items": {
    "items":[
        {"name": "firstitemname", 
         "price": "5"
        },
        {"name": "secondone", 
         "years": "3"
        }],
}}
$query = mysql_query("SELECT * FROM itemlist");
$json_output = array();
while($row = mysql_fetch_assoc($query)){
    $json_output[] = json_encode($row);
}

这里,$json_输出将包含一个字符串数组,每行的json编码字符串作为每个数组元素。您可以随意输出这些内容。

使用以下代码将数据表转换为json:

<?php
$result = mysql_query("select * from item_list");
$rows = array();
while($r = mysql_fetch_assoc($result))
{
$rows[] = $r;
}
print json_encode($rows);
?>
echo(json_encode($array));  
例如,从mysql中选择数据并转换为json:

 public function SELECT($tableName,$conditions){

      $connection = mysqli_connect($hostname, $userName, $password,$dbName);
      try {

        if (!$connection)
            die("Connection failed: " . $connection->connect_error);
        else
        {
            $qry = "";
            if(!$this->IsNullOrEmptyString($conditions))
               $qry = "SELECT * FROM `".$tableName."` WHERE ".$conditions;
            else
               $qry = "SELECT * FROM `".$tableName."`";

            $result = mysqli_query( $connection, $qry);
            if($result) {
                $emparray = array();
                while($row =mysqli_fetch_assoc($result))
                    $emparray[] = $row;

                echo(json_encode($emparray));           
            }
            else
                echo(mysqli_error($connection));       
            } 
            mysqli_close($connection); 
      } catch(Exception $ex) {
          mysqli_close($connection);
          echo($ex->getMessage());
      }  
 }

使用以下代码将数据表转换为json:

echo(json_encode($array));  
例如,从mysql中选择数据并转换为json:

 public function SELECT($tableName,$conditions){

      $connection = mysqli_connect($hostname, $userName, $password,$dbName);
      try {

        if (!$connection)
            die("Connection failed: " . $connection->connect_error);
        else
        {
            $qry = "";
            if(!$this->IsNullOrEmptyString($conditions))
               $qry = "SELECT * FROM `".$tableName."` WHERE ".$conditions;
            else
               $qry = "SELECT * FROM `".$tableName."`";

            $result = mysqli_query( $connection, $qry);
            if($result) {
                $emparray = array();
                while($row =mysqli_fetch_assoc($result))
                    $emparray[] = $row;

                echo(json_encode($emparray));           
            }
            else
                echo(mysqli_error($connection));       
            } 
            mysqli_close($connection); 
      } catch(Exception $ex) {
          mysqli_close($connection);
          echo($ex->getMessage());
      }  
 }

让我知道它是否按预期工作。另外,我的名字拼写和你们一样,不确定这是否有效。让我知道它是否如预期的那样工作。另外,我的名字拼写和你们一样,不确定这是否有效。