0

我基本上想$georesults在 while 循环之外定义数组及其键值对,但我希望数组由pg_fetch_array()while 循环内的行填充。

while ($row = pg_fetch_array($result, NULL, PGSQL_ASSOC)) {
        $georesults['results'][] = array(
                    "$columns[0]" => $row["$columns[0]"],
                    "$columns[1]" => $row["$columns[1]"],
                    "$columns[2]" => $row["$columns[2]"],
                    "$columns[3]" => $row["$columns[3]"]
                    );
    }

我不太确定如何实现这一目标。

是否可以定义数组:

$georesults['results'][] = array(
                    "$columns[0]" => $row["$columns[0]"],
                    "$columns[1]" => $row["$columns[1]"],
                    "$columns[2]" => $row["$columns[2]"],
                    "$columns[3]" => $row["$columns[3]"]
                    );

在 while 循环之外,但它是否从结果中填充pg_fetch_array

我想这样做的原因是因为我想根据查询中定义的列动态设置键值对的数量。查询会经常更​​改。取决于用户选择的内容。

问候地理

4

1 回答 1

1

//在循环外声明数组变量。

 $results=array();

while ($row = pg_fetch_array($result, NULL, PGSQL_ASSOC)) {

        $results[] = $row;
    }
//you can use the result outside the loop.

or

    $results=array();

while ($row = pg_fetch_array($result, NULL, PGSQL_ASSOC)) {

      $results[] = array('id'=>$row['id'],'name'=>$row['name'], 'password'=>$row['password'] );

    }

//use the result outside the loop

希望能帮助到你

于 2012-10-16T13:40:04.033 回答