我有php代码,它向两个不同服务器上的两个postgresql数据库提交一个字符串。
字符串是:
'£pound €euro'PHP版本:
服务器1版本:
服务器2版本:
两者的服务器编码都是UTF8。
client_encoding也是UTF8
两个服务器的区域设置也是相同的。
以下代码用于执行查询:
$oConn=@pg_Connect('host=$myip dbname=$mydb user=$myuser password=$mypassword');
$sql = "select * from _myfunction($mystring)";
$result=@pg_query($oConn, $sql);我发现,当执行查询时,服务器1将接收到以下内容:
select * from _myfunction('£pound €euro')然而,在服务器2上,正在收到以下消息:
select * from _myfunction('£pound â�¬euro')有谁知道我在哪里可以找出导致这两个服务器之间接收到的查询的差异的原因。查看服务器2的查询变得异常,数据库其他部分的无效字节序列错误正在引发问题。
我很困惑。我看到的唯一不同是postgresql的次要版本。
发布于 2015-06-19 15:53:55
我想你的后置字符集在两个服务器上都不一样。看How can i change database encoding for a PostgreSQL database using sql or phpPgAdmin?,它可能对你有帮助
https://stackoverflow.com/questions/30942321
复制相似问题