3

PHP5 + PostgreSQL (ubuntu 12.04) によると、doco は pg_fetch_row() の配列を返します。私のテスト結果では、文字列を返していることが示されていますが、これにはいくつかの構成オプションがありますか?

$db = openDatabase(<blah>);
$query = "SELECT (id,serial,tag) FROM devices ORDER BY tag ASC";
$result = pg_query($db,$query);
if ($result)
{
    while ($row = pg_fetch_row($result))
        echo "IN: $row[0] - $row[1] - $row[2]";
}

私は見ることを期待しています

IN: <value> - <value> - <value>

しかし、私は得る

IN: (<value>,<value>,<value>) - - 

これは、pg_fetch_row() が配列ではなく文字列を返すことを意味していると思いますか?!

たとえば、実際の実行:

IN: (10,7426573,________) - - 
IN: (7,6862,FMUX-TAG) - - 
IN: (9,6914082,L6) - - 

単純な問題のようですが、答えが見つかりません。結果を解析できることはわかっていますが、それは面倒です。

4

2 に答える 2

1

答えは簡単です。次のように、SELECT ステートメントから括弧を削除するだけです。

$query = "SELECT id,serial,tag FROM devices ORDER BY tag ASC";

それ以外の場合は、出力の文字列です。

于 2012-10-09T08:20:33.003 に答える