Thread: PHP and Postgres arrays

PHP and Postgres arrays

From
Yannick Warnier
Date:
Hello,

I've been searching (not very thoroughly, but still) for a way to get
Postgres arrays right into PHP arrays, but it seems that the Postgres
driver simply doesn't allow that.

The only solution seems to use some user-defined functions[1] to split
the result of a query (a string) into a PHP array.

Some Perl-related readings [2] seem to say that Postgres actually
provides a string, loosing the possibility to get it as an array, but
these comments date back to 2005.

Any chance someone around here might tell me more about this and
possibly give me some better way to get those arrays than copy-pasting
the user-proposed PHP functions?

Thanks,

Yannick Warnier

[1] http://www.php.net/manual/en/ref.pgsql.php#58660
[2] http://www.perlmonks.org/?node_id=474518


Re: PHP and Postgres arrays

From
Ivan Sergio Borgonovo
Date:
On Fri, 18 Jan 2008 23:01:09 +0100
Yannick Warnier <ywarnier@beeznest.org> wrote:

> Hello,

> I've been searching (not very thoroughly, but still) for a way to
> get Postgres arrays right into PHP arrays, but it seems that the
> Postgres driver simply doesn't allow that.

What about using a stored procedure to return the array as a joined
row?

--
Ivan Sergio Borgonovo
http://www.webthatworks.it


Re: PHP and Postgres arrays

From
Yannick Warnier
Date:
Le vendredi 18 janvier 2008 à 23:10 +0100, Ivan Sergio Borgonovo a
écrit :
> On Fri, 18 Jan 2008 23:01:09 +0100
> Yannick Warnier <ywarnier@beeznest.org> wrote:
>
> > Hello,
>
> > I've been searching (not very thoroughly, but still) for a way to
> > get Postgres arrays right into PHP arrays, but it seems that the
> > Postgres driver simply doesn't allow that.
>
> What about using a stored procedure to return the array as a joined
> row?

I thought about it, but it's not very portable if you want to ship a PHP
application. But I admit I will fall back to that solution if I cannot
find any other (considering PostgreSQL might be the only open-source
database to offer in-fields arrays anyway).

Yannick


Re: PHP and Postgres arrays

From
Hannes Dorbath
Date:
Yannick Warnier wrote:
> I thought about it, but it's not very portable if you want to ship a PHP
> application. But I admit I will fall back to that solution if I cannot
> find any other (considering PostgreSQL might be the only open-source
> database to offer in-fields arrays anyway).

You can use the build in function array_to_string:
http://www.postgresql.org/docs/8.3/static/functions-array.html


--
Best regards,
Hannes Dorbath

Re: PHP and Postgres arrays

From
brian
Date:
Hannes Dorbath wrote:
> Yannick Warnier wrote:
>> I thought about it, but it's not very portable if you want to ship a PHP
>> application. But I admit I will fall back to that solution if I cannot
>> find any other (considering PostgreSQL might be the only open-source
>> database to offer in-fields arrays anyway).
>
> You can use the build in function array_to_string:
> http://www.postgresql.org/docs/8.3/static/functions-array.html
>

Then use implode(YOUR_DELIMITER, YOUR_STRING) to get an array.

Another solution would be to use the MDB2 (or similar) PEAR wrapper.

b