pg_trace

(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)

pg_traceEnable tracing a PostgreSQL connection

Açıklama

pg_trace(
    string$filename,
    string$mode = "w",
    ?PgSql\Connection$connection = null,
    int$trace_mode = 0
): bool

pg_trace() enables tracing of the PostgreSQL frontend/backend communication to a file. To fully understand the results, one needs to be familiar with the internals of PostgreSQL communication protocol.

For those who are not, it can still be useful for tracing errors in queries sent to the server, you could do for example grep '^To backend' trace.log and see what queries actually were sent to the PostgreSQL server. For more information, refer to the » PostgreSQL Documentation.

Bağımsız Değişkenler

filename

The full path and file name of the file in which to write the trace log. Same as in fopen().

mode

An optional file access mode, same as for fopen().

connection

PgSql\Connection nesnesi. bağlantınull ise, öntanımlı bağlantı kullanılır.Öntanımlı bağlantı pg_connect() veya pg_pconnect() işleviyle kurulmuş son bağlantıdır.

Uyarı

PHP 8.1.0 ve sonrasında, öntanımlı bağlantının kullanımı önerilmemektedir.

trace_mode

An optional trace mode with the following constants PGSQL_TRACE_SUPPRESS_TIMESTAMPS and PGSQL_TRACE_REGRESS_MODE

Dönen Değerler

Başarı durumunda true, başarısızlık durumunda false döner.

Sürüm Bilgisi

Sürüm: Açıklama
8.3.0trace_mode has been added.
8.1.0bağlantı bağımsız değişkeni artık PgSql\Connection nesnesi kabul ediyor, evvelce bir özkaynak kabul ederdi.
8.0.0connection is now nullable.

Örnekler

Örnek 1 pg_trace() example

<?php
$pgsql_conn
= pg_connect("dbname=mark host=localhost");

if (
$pgsql_conn) {
pg_trace('/tmp/trace.log', 'w', $pgsql_conn);
pg_query("SELECT 1");
pg_untrace($pgsql_conn);
// Now /tmp/trace.log will contain backend communication
} else {
print
pg_last_error($pgsql_conn);
exit;
}
?>

Ayrıca Bakınız

To Top