mirror of
https://github.com/php/php-src.git
synced 2026-04-21 15:08:16 +02:00
1f42777927
The DB connection should be provided in all cases as the first argument. The overloaded function signatures will be removed in the future. Warn about this change. Part of https://wiki.php.net/rfc/deprecations_php_8_1.
79 lines
1.7 KiB
PHP
79 lines
1.7 KiB
PHP
--TEST--
|
|
PostgreSQL notice function
|
|
--EXTENSIONS--
|
|
pgsql
|
|
--SKIPIF--
|
|
<?php
|
|
|
|
include("skipif.inc");
|
|
|
|
_skip_lc_messages($conn);
|
|
|
|
?>
|
|
--FILE--
|
|
<?php
|
|
include 'config.inc';
|
|
include 'lcmess.inc';
|
|
|
|
ini_set('pgsql.log_notice', TRUE);
|
|
ini_set('pgsql.ignore_notice', FALSE);
|
|
|
|
$db = pg_connect($conn_str);
|
|
|
|
_set_lc_messages($db);
|
|
|
|
$res = pg_query($db, 'SET client_min_messages TO NOTICE;');
|
|
var_dump($res);
|
|
|
|
// Get empty notice
|
|
var_dump(pg_last_notice($db));
|
|
var_dump(pg_last_notice($db, PGSQL_NOTICE_ALL));
|
|
|
|
pg_query($db, "BEGIN;");
|
|
pg_query($db, "BEGIN;");
|
|
pg_query($db, "BEGIN;");
|
|
pg_query($db, "BEGIN;");
|
|
|
|
// Get notices
|
|
var_dump(pg_last_notice($db));
|
|
var_dump(pg_last_notice($db, PGSQL_NOTICE_ALL));
|
|
|
|
// Clear and get notices
|
|
var_dump(pg_last_notice($db, PGSQL_NOTICE_CLEAR));
|
|
var_dump(pg_last_notice($db, PGSQL_NOTICE_LAST));
|
|
var_dump(pg_last_notice($db, PGSQL_NOTICE_ALL));
|
|
|
|
// Invalid option
|
|
try {
|
|
var_dump(pg_last_notice($db, 99));
|
|
} catch (\ValueError $e) {
|
|
echo $e->getMessage() . \PHP_EOL;
|
|
}
|
|
?>
|
|
--EXPECTF--
|
|
object(PgSql\Result)#%d (0) {
|
|
}
|
|
string(0) ""
|
|
array(0) {
|
|
}
|
|
|
|
Notice: pg_query(): %s already a transaction in progress in %s on line %d
|
|
|
|
Notice: pg_query(): %s already a transaction in progress in %s on line %d
|
|
|
|
Notice: pg_query(): %s already a transaction in progress in %s on line %d
|
|
string(52) "WARNING: there is already a transaction in progress"
|
|
array(3) {
|
|
[0]=>
|
|
string(52) "WARNING: there is already a transaction in progress"
|
|
[1]=>
|
|
string(52) "WARNING: there is already a transaction in progress"
|
|
[2]=>
|
|
string(52) "WARNING: there is already a transaction in progress"
|
|
}
|
|
bool(true)
|
|
string(0) ""
|
|
array(0) {
|
|
}
|
|
pg_last_notice(): Argument #2 ($mode) must be one of PGSQL_NOTICE_LAST, PGSQL_NOTICE_ALL, or PGSQL_NOTICE_CLEAR
|