【问题标题】:Mysql to JSON specific rowsMysql 到 JSON 特定行
【发布时间】:2014-10-11 23:09:53
【问题描述】:

有一个 MySQL 数据库,带有 “事件”表。在该表中,我有超过 250 行,包含不同的事件、名称、ID、位置和开始时间。我知道如何从该表中获取所有数据,但我想学习如何获取特定行。

今天如何获取带有 start_time 的行?

我的代码:

//Create Database connection
$db = mysql_connect("####","####","####");
if (!$db) {
    die('Could not connect to db: ' . mysql_error());
}

//Select the Database

mysql_select_db("rlidi37_timisoara",$db);

$result = mysql_query("select * from events", $db); 

//Create an array
$json_response = array();
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {

    $row_array['name'] = $row['name'];
    $row_array['location'] = $row['location'];
    $row_array['id'] = $row['id'];
    $row_array['start_time'] = $row['start_time'];

    //push the values in the arr
    array_push($json_response,$row_array);

}

echo json_encode($json_response);
//Close the database connection
fclose($db);

【问题讨论】:

  • 是的...您应该使用mysqlimysql 已折旧。面向对象的风格可以节省打字。你的问题太模糊了。
  • $result = mysql_query("select * from events where start_time>=CURDATE()", $db);

标签: php mysql sql json


【解决方案1】:

首先修改您的查询以添加 WHERE 子句来过滤结果。然后,一旦获得结果,就可以将其转换为 JSON 1 of 2 方式。

  1. 如果您使用的是普通的 php mysql 函数,我认为您必须遍历数据以创建一个数组数组,其中每条记录都是一个关联数组。然后你可以在那个二维数组上调用 json_encode。

  2. 如果您使用的是 PDO,请查看 PDO::FETCH_OBJ 选项。请参阅此 Stack Overflow 问题:PDOStatement to json

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-01
    • 1970-01-01
    • 2021-09-09
    • 2017-05-16
    • 2015-08-24
    • 2016-06-19
    • 2017-06-18
    • 1970-01-01
    相关资源
    最近更新 更多