Req #78855 [Com]: Native PHP types in database fetches
| From: | fgfgfgfdf at somewhere dot com | Date: | Fri, 22 Nov 2019 12:51:59 +0000 |
| Subject: | Req #78855 [Com]: Native PHP types in database fetches | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-223855@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=78855&edit=1
ID: 78855
Comment by: fgfgfgfdf at somewhere dot com
Reported by: olegxx at gmail dot com
Summary: Native PHP types in database fetches
Status: Open
Type: Feature/Change Request
Package: PostgreSQL related
Operating System: Linux
PHP Version: 7.2.25
Block user comment: N
Private report: N
New Comment:
> We can add extension wide (php.ini) option to change
> behavior of all fetch functions
you can't, no RFC introducing ini options which change language behavior that way will pass in
2019
> also we can add fourth param to pg_fetch_result to return
> error in it for example
or you can refrain from half thougth solutions and write a proper RFC which get discussed, no way
that any change in that context will go into 7.2/7.3/7.4 anyways
Previous Comments:
------------------------------------------------------------------------
[2019-11-22 12:47:32] olegxx at gmail dot com
We can add extension wide (php.ini) option to change behavior of all fetch functions, also we can
add fourth param to pg_fetch_result to return error in it for example.
------------------------------------------------------------------------
[2019-11-22 12:28:39] fgfgfgfdf at somewhere dot com
> MySQL does not have a Boolean type, and Postgres does
and how is that relevant when it's about a global connection option versus add params to each
and every single command which needs massive rewrite in existing userland code to use it?
------------------------------------------------------------------------
[2019-11-22 12:27:49] olegxx at gmail dot com
PostgreSQL have bool type:
$res = pg_query($db, "SELECT false");
var_dump(pg_fetch_result($res, 0));
This code should print "bool(false)" in native types mode but
"FALSE is returned if row exceeds the number of rows in the set, or on any other error."
------------------------------------------------------------------------
[2019-11-22 12:24:49] imbolk at gmail dot com
MySQL does not have a Boolean type, and Postgres does.
------------------------------------------------------------------------
[2019-11-22 12:23:41] fgfgfgfdf at somewhere dot com
> This extension do not have any connection wide options
cool, than introduce pg_options() is the right thing to do for the sake of cosistency and usability
either i have a strict typed project or not and seek and adjust every single line containing pg_
don't scale at any moment, in a existing codebase nobody would do that and later you can be
sure people forget to use the option here and there which is not funny when you get strings instead
int on random places
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=78855
--
Edit this bug report at https://bugs.php.net/bug.php?id=78855&edit=1