diff options
author | Anatol Belski <ab@php.net> | 2016-04-16 16:11:22 +0200 |
---|---|---|
committer | Anatol Belski <ab@php.net> | 2016-04-16 16:11:22 +0200 |
commit | fd6f7b83411819361d89fa53247e6f1cb2683cd4 (patch) | |
tree | 5d0e5099c17d71a33bc3dd190e47317bf4b7d5e9 /ext/pgsql/tests | |
parent | d8590940a19cdf5039c9ee52c901b2e4a9f9d769 (diff) | |
download | php-git-fd6f7b83411819361d89fa53247e6f1cb2683cd4.tar.gz |
Add test for bug #72028
Diffstat (limited to 'ext/pgsql/tests')
-rw-r--r-- | ext/pgsql/tests/bug72028.phpt | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/ext/pgsql/tests/bug72028.phpt b/ext/pgsql/tests/bug72028.phpt new file mode 100644 index 0000000000..217a03abc7 --- /dev/null +++ b/ext/pgsql/tests/bug72028.phpt @@ -0,0 +1,52 @@ +--TEST-- +Bug #72028 pg_query_params(): NULL converts to empty string +--SKIPIF-- +<?php include("skipif.inc"); ?> +--FILE-- +<?php +// create test table + +include('config.inc'); + +$conn = pg_connect($conn_str); + +$table = "bug72028_" . md5(uniqid(time())); + +pg_query("CREATE TABLE $table (value TEXT, details TEXT);"); + +$sql = "INSERT INTO $table (value, details) VALUES ($1, $2)"; + +$params = array(null, "insert before looping with a reference"); +$result = pg_query_params($conn, $sql, $params); + +$params2 = array(null, "insert after looping with a reference"); +foreach ($params2 as &$p) { + // doing nothing +} +unset($p); + +$result = pg_query_params($conn, $sql, $params2); + +$r = pg_query("SELECT * FROM $table"); +while (false !== ($i = pg_fetch_assoc($r))) { + var_dump($i); +} + +pg_query("DROP TABLE $table"); + +?> +==DONE== +--EXPECT-- +array(2) { + ["value"]=> + NULL + ["details"]=> + string(38) "insert before looping with a reference" +} +array(2) { + ["value"]=> + NULL + ["details"]=> + string(37) "insert after looping with a reference" +} +==DONE== |