PHP - PDO 连接后区域设置信息消失 (DB2)

标签 php pdo db2 locale

在使用 PDO 连接到 DB2 后,PHP 会丢失所有语言环境信息吗?

我总是需要在连接后重新设置语言环境信息。

<?PHP
//set locale information
setlocale( LC_MONETARY,'en_US' );

//print location information
print_r(localeconv());

//    Array
//    (
//      [decimal_point] => .
//      [thousands_sep] => 
//      [int_curr_symbol] => USD 
//      [currency_symbol] => $
//      [mon_decimal_point] => .
//      [mon_thousands_sep] => ,
//      ...
//    )

//************************************************
//create conenction to server
$connection= new PDO("odbc:server", 'username', 'password');
//************************************************

//see locale information after creating a connection
print_r(localeconv());

//    Array
//    (
//      [decimal_point] => .
//      [thousands_sep] => 
//      [int_curr_symbol] => 
//      [currency_symbol] => 
//      [mon_decimal_point] => 
//      [mon_thousands_sep] => 
//      ...
//
//    )
?>

最佳答案

如果您使用的是 Windows,那么通常会出现 setlocale() 不起作用的问题。在我的例子中,它在脚本运行时随机切换到基本语言环境。我赢得了 7 个专业的 64 位。当时没有其他脚本在运行。

关于PHP - PDO 连接后区域设置信息消失 (DB2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12921059/

相关文章:

php - 我在使用限制分页时联合所有查询时遇到问题

php - 如何使用不同的表列使用 mysql/php 填充多个下拉框

php - NicEdit:图片上传到自己的服务器不起作用 -> 配置错误?

php - PDO异常 : SQLSTATE[08004] [1040] Too many connections

php - 用数据行填充 html 表。使用选择框选择

sql - DB2(v10.5.0.5) 如何将自增列添加到已存在的表中

sql - 如何选择 col1 值 x 并复制到 col1 值 y 的新行,如果再次运行查询,不应再次复制

php - 如何在 Doctrine 2 中使用 WHERE IN

php - 如何使用pdo mysql在插入记录期间检查字段数据类型是否一致

.net - IBM .net 驱动程序找不到 db2locale.dll