Re: PHP and PostgreSQL boolean data type - Mailing list pgsql-php

From Chris
Subject Re: PHP and PostgreSQL boolean data type
Date
Msg-id 4B732B94.20007@gmail.com
Whole thread Raw
In response to PHP and PostgreSQL boolean data type  (Thom Brown <thombrown@gmail.com>)
List pgsql-php
Thom Brown wrote:
> Hi,
>
> A long-standing problem we've had with PostgreSQL queries in PHP is
> that the returned data for boolean columns is the string 'f' instead
> of the native boolean value of false.
>
> An obvious example of this would be for a table with users and their
> boolean registered status:
>
> Select user, registered From users;
>
> Then getting a row from the result would reveal: array('user' =>
> 'thomb', registered => 'f');

That's how postgres stores them, php doesn't understand the field is a
boolean.

# create table a(a int, b boolean);
# insert into a(a, b) values (1, true);
# insert into a(a, b) values (2, false);
# SELECT * from a;
  a | b
---+---
  1 | t
  2 | f
(2 rows)

Also while not in the "official" docs, it is a note from 2002:

http://www.php.net/manual/en/ref.pgsql.php#18749

and

http://www.php.net/manual/en/function.pg-fetch-array.php says

Each value in the array is represented as a string. Database NULL
values are returned as NULL.


> Another problem is with arrays, where they are difficult to parse as
> they also come through as plain strings with no binary alternative.

Haven't played with postgres arrays so can't say either way - but same
as above, php just fetches the data.

There's an example that might help you -
http://www.php.net/manual/en/ref.pgsql.php#89841

--
Postgresql & php tutorials
http://www.designmagick.com/


pgsql-php by date:

Previous
From: Thom Brown
Date:
Subject: PHP and PostgreSQL boolean data type
Next
From: Jasen Betts
Date:
Subject: Re: PHP and PostgreSQL boolean data type