本文介绍了如何在PDO类构造函数中为PHP PgSQL数据库设置UTF-8的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想为我的PDO对象设置UTF8.此类可与MySQL一起正常使用.我找不到PgSQL的array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES UTF8")
类似物,也无法使用西里尔符号.
I want to set UTF8 for my PDO object. This class works correctly with MySQL.I can't find an analog of array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES UTF8")
for PgSQL and I can't work with cyrillic symbols.
class oop{
private $host="localhost";
private $user="xxxx";
private $db="xxxx";
private $pass="111111";
private $conn;
public function __construct(){
$this->conn = new PDO("pgsql:host=".$this->host.";dbname=".$this->db,$this->user,$this->pass,array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES UTF8") );
}
推荐答案
根据我在21.2.3节中看到的此页面,则可以使用以下两个命令之一:
From what I see in section 21.2.3 on this page, you can use one of the following two commands:
-
SET CLIENT_ENCODING TO 'value';
-
SET NAMES 'value';
SET CLIENT_ENCODING TO 'value';
SET NAMES 'value';
其中值= UTF8
.尝试使用:
where value = UTF8
. Try using:
SET CLIENT_ENCODING TO 'UTF8';
或
SET NAMES 'UTF8';
这篇关于如何在PDO类构造函数中为PHP PgSQL数据库设置UTF-8的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!