(PHP 4 >= 4.0.3, PHP 5, PHP 7, PHP 8)
pg_client_encoding — クライアントのエンコーディングを取得する
PostgreSQL は、ある種の文字セットについてはサーバーとクライアントの間の 自動文字コード変換をサポートしています。 pg_client_encoding() は、クライアントの エンコーディングを文字列として返します。返される値は、標準の PostgreSQL エンコーディング識別子のなかのひとつとなります。
注意:
この関数を使用するには、PostgreSQL 7.0 以降が必要です。 libpq がマルチバイトエンコーディングのサポートを有効にせずに コンパイルされている場合、pg_client_encoding() は常に
SQL_ASCIIを返します。サポートされる エンコーディングは PostgreSQL のバージョンに依存します。サポートされる エンコーディングの詳細については PostgreSQL のドキュメントを参照ください。この関数は、以前は pg_clientencoding() と呼ばれていました。
connectionPgSql\Connection クラスのインスタンス。
connection が null, の場合、デフォルトの接続を使います。
デフォルトの接続とは、pg_connect() または pg_pconnect() によって確立された直近の接続です。
PHP 8.1.0 以降では、デフォルトの接続を使うことは推奨されなくなりました。
クライアントのエンコーディングを返します。
| バージョン | 説明 |
|---|---|
| 8.1.0 |
connection は、PgSql\Connection クラスのインスタンスを期待するようになりました。
これより前のバージョンでは、resource を期待していました。
|
| 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