Search Postgresql Archives

Re: CentOS 7.3, PostgreSQL 9.6.2, PHP 5.4 deliver array as string

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 2, 2017 at 2:12 PM, Adrian Klaver <adrian.klaver@xxxxxxxxxxx> wrote:
On 03/02/2017 12:45 PM, Alexander Farber wrote:
Good evening!

I am calling this stored function -

CREATE OR REPLACE FUNCTION words_get_board(
                in_gid integer
        ) RETURNS TABLE (
                out_bid integer,
                out_letters varchar[15][15],
                out_values integer[15][15]
        ) AS
$func$
        SELECT
                bid,
                letters,
                values
        FROM    words_games
        WHERE   gid = in_gid;

$func$ LANGUAGE sql STABLE;

I am not seeing where you assign the results of your SELECT to the OUT parameters in the RETURNS TABLE. Nor do I see anything that turns the results into an array for those OUT parameters of array type.


​The function isn't the problem here - its in SQL language.  Explicit assignment is needed in pl/pgsql​.
 


by a PHP script -

        $sth = $dbh->prepare(SQL_GET_BOARD);
        $sth->execute(array($gid));
        if ($row = $sth->fetch(PDO::FETCH_ASSOC)) {
                $bid     = $row['bid'];
                $letters = $row['letters'];
                $values  = $row['values'];
        }

And then print the variable type -

error_log('letters: ' . gettype($letters));

and it is a "string" (instead of inspected array) with the following
content:

Proper usage of PHP PDO is the concern - and outside my personal experience.

David J.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux