pg_client_encoding

クライアントのエンコーディングを取得する

説明

string pg_client_encoding(PgSql\Connectionnull $connection = null)

PostgreSQL は、ある種の文字セットについてはサーバーとクライアントの間の 自動文字コード変換をサポートしています。 pg_client_encoding は、クライアントの エンコーディングを文字列として返します。返される値は、標準の PostgreSQL エンコーディング識別子のなかのひとつとなります。

注意:

この関数を使用するには、PostgreSQL 7.0 以降が必要です。 libpq がマルチバイトエンコーディングのサポートを有効にせずに コンパイルされている場合、pg_client_encoding は常に SQL_ASCII を返します。サポートされる エンコーディングは PostgreSQL のバージョンに依存します。サポートされる エンコーディングの詳細については PostgreSQL のドキュメントを参照ください。

この関数は、以前は pg_clientencoding と呼ばれていました。

パラメータ

connection

PgSql\Connection クラスのインスタンス。 connectionnull, の場合、デフォルトの接続を使います。 デフォルトの接続とは、pg_connect または pg_pconnect によって確立された直近の接続です。

警告

PHP 8.1.0 以降では、デフォルトの接続を使うことは推奨されなくなりました。

戻り値

クライアントのエンコーディングを返します。

変更履歴

バージョン 説明
8.1.0 connection は、PgSql\Connection クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、リソース を期待していました。
8.0.0 connection は、nullable になりました。

例1 pg_client_encoding の例

<?php
// $conn の接続先のエンコーディングは ISO-8859-1 であるとする
$encoding pg_client_encoding($conn);

echo 
"Client encoding is: "$encoding"\n";
?>

上の例の出力は以下となります。

Client encoding is: ISO-8859-1

参考

  • pg_set_client_encoding