【发布时间】:2015-12-05 16:03:05
【问题描述】:
我正在使用 PHP 5.6.0 并连接到我的本地 SQL Server。我能够检索数据,但它是数组格式。我想把它转换成json格式。
我得到了什么:
(
[date] => 2013-02-05 16:02:02.000000
[timezone_type] => 3
[timezone] => America/New_York
)
我想要什么:
(
"date" : "2013-02-05 16:02:02.000000",
"timezone_type" : "3",
"timezone" : "America/New_York"
)
这是我的代码:
$sql = "SELECT * FROM table";
$stmt = sqlsrv_query($conn, $sql);
$result = array();
do {
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)){
$result[] = print_r($row);
}
} while (sqlsrv_next_result($stmt));
echo json_encode($result);
sqlsrv_free_stmt($stmt);
sqlsrv_close($conn);
我的理解是 json_encode 应该转换我的数据,但它似乎不是那样工作的。
谢谢!
【问题讨论】:
-
你为什么使用
print_r($row)?这只是一些调试的错字吗?如果不尝试没有 print_r -
@Styphon 我正在使用 print_r,因为这是我真正可以看到代码的唯一方法。没有它,我会得到一个空白屏幕。
-
那么你应该使用
print_r($row); $result[] = $row;。您当前拥有的内容无效。
标签: php sql-server json angularjs windows