我在php中有一个从服务器获取数据的脚本,但我想用json格式对其进行编码。
<?php
// attempt a connection
$dbh = pg_connect("host=10.22.35.11 dbname=iwmp_dev2 user=postgres ");
if (!$dbh) {
die("Error in connection: " . pg_last_error());
}
// execute query
//$sql = $_POST['pLat'];
$sql = "SELECT officer_name FROM iwmp_officer";
$result = pg_query($dbh, $sql);
if (!$result) {
die("Error in SQL query: " . pg_last_error());
}
$array = array();
while ($row = pg_fetch_assoc($result)) {
$i++;
$comm = implode(",",$row);
echo json_encode($comm);
}
// free memory
pg_free_result($result);
// close connection
pg_close($dbh);
?>
但我的输出格式是
“M. ARORA”“C. P. REDDY博士”“ARTI CHOWDHARY”“JAGDISH SINGH” 当在* pgsql_fetch_assoc *上使用implode func时,没有“,”(昏迷)即将到来。
请帮助
答案 0 :(得分:3)
我认为你的做法是错误的。尝试如下所示。
while ($row = pg_fetch_assoc($result)) {
$rows[] = $row;
}
echo json_encode($rows);
答案 1 :(得分:1)
试试这个;
while ($row = pg_fetch_assoc($result)) {
echo json_encode($row);
}
答案 2 :(得分:0)
您无需破坏$row
。尝试使用以下代码替换while循环
while ($row = pg_fetch_assoc($result)) {
echo json_encode($row);
}