電子書籍の厳選無料作品が豊富!

PostgreSQL7.4 + PHP4.3 + Pearの環境です。

配列の項目から要素を展開しようとしたところでハマりました。

$sql = "select * from T";

$result = $db->query($sql);

$row = $result->fetchRow(DB_FETCHMODE_OBJECT))
$id = $row->id;
$a1 = $row->a1;

a1は配列項目で、0,1,2,3 のように要素が入っているのですが、上のソースだと、

$a1[1]='{'
$a1[2]='0'
$a1[3]=','
$a1[4]='1'

のように展開されてしまいました。select文からみるとa1項目は {0,1,2,3} という文字列で入っているのがわかりました。

SQL文が select a1[1],a1[2],a1[3],a1[4] from T; のような形だと正しく取得できますが、実際は配列の要素数が不定なのでこのようなSQLは使えません(長くなるし)

色々調べてみましたが、
$a1='{0,1,2,3}'

$a1[1]='0'
$a1[2]='1'
$a1[3]='2'
$a1[4]='3'
に展開する関数が見当たらないみたいです。PostgreSQLの配列項目を扱ったのは初めてなのでとまどっているのですが、簡単にarray変数に展開する方法はないでしょうか。

A 回答 (1件)

splitじゃダメなの?

    • good
    • 0
この回答へのお礼

回答ありがとうございます。結局、自力で解決しました。explodeを使いました。

お礼日時:2004/07/04 17:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!