pg_query($connection, "set client_encoding to '$encoding'") can be used instead.
(PHP 4 >= 4.0.3, PHP 5, PHP 7, PHP 8)
pg_set_client_encoding — Устанавливает клиентскую кодировку
pg_set_client_encoding() устанавливает клиентскую кодировку и возвращает 0 в случае успешного выполнения, -1 в случае возникновения ошибки.
PostgreSQL автоматически конвертирует данные из кодировки базы данных в кодировку клиентского приложения.
Замечание:
Прежнее название функции: pg_setclientencoding().
connection
Экземпляр PgSql\Connection.
Если параметр connection
не указан, будет выбрано соединение по умолчанию. Соединение по умолчанию — это последнее соединение, которое установила функция pg_connect()
или pg_pconnect().
Начиная с версии PHP 8.1.0, использование соединения по умолчанию устарело.
encoding
Требуемая клиентская кодировка. Список возможных значений:
SQL_ASCII
, EUC_JP
,
EUC_CN
, EUC_KR
,
EUC_TW
, UNICODE
,
MULE_INTERNAL
, LATINX
(X=1...9),
KOI8
, WIN
,
ALT
, SJIS
,
BIG5
or WIN1250
.
Список доступных кодировок зависит от версии PostgreSQL. Смотрите документацию к вашей версии сервера.
Возвращает 0
в случае успешного выполнения, либо -1
в случае возникновения ошибки.
Версия | Описание |
---|---|
8.1.0 |
Параметр connection теперь ожидает экземпляр PgSql\Connection; ранее ожидался ресурс (resource).
|
Пример #1 Пример использования pg_set_client_encoding()
<?php
$conn = pg_pconnect("dbname=publisher");
if (!$conn) {
echo "Произошла ошибка.\n";
exit;
}
// Установка кодировки в UNICODE. Данные будут автоматически
// преобразованы из кодировки в базе данных к клиентской.
pg_set_client_encoding($conn, "UNICODE");
$result = pg_query($conn, "SELECT author, email FROM authors");
if (!$result) {
echo "Произошла ошибка.\n";
exit;
}
// Выводим UTF-8 данные
while ($row = pg_fetch_row($result)) {
echo "Author: $row[0] E-mail: $row[1]";
echo "<br />\n";
}
?>