Deprecated: Optional parameter $keys declared before required parameter $cms_id is implicitly treated as a required parameter in /home/www/dev/work/class/blog/CmsKey.php on line 75

Deprecated: Creation of dynamic property lvesu\lvesu\controller\blog\main::$outlink is deprecated in /home/www/dev/work/website/lvesu/template/blog/cms/cms.tpl on line 2

Deprecated: Creation of dynamic property lvesu\lvesu\controller\blog\main::$status is deprecated in /home/www/dev/work/website/lvesu/template/blog/index.head.php on line 2
php7.3 使用 PDO_DM 扩展连接 DM8 中文乱码 - 互联网笔记

略微加速

略速 - 互联网笔记

php7.3 使用 PDO_DM 扩展连接 DM8 中文乱码

2025-04-28 leiting (11阅读)

标签 PHP

php7.3 使用 PDO_DM 扩展连接 DM8 中文乱码

【问题描述】

PHP 7.4.16 (cli) (built: Mar 31 2021 10:30:01) ( NTS ) 安装配置了 DM、PDO_DM 扩展并且运行正常,使用 PDO 函数连接 dm8 select 查询中文乱码,针对乱码问题进行过以下尝试不起作用:

修改/etc/dm_svc.conf

cat /etc/dm_svc.conf

CHAR_CODE=(PG_UTF8)

DM 数据库编码设置为 UTF-8;php 编辑器 UTF-8; PDO 连接设置为 UTF8

重启 php-fpm,重启 dmServer,重启电脑,中文乱码扔未解决

使用 DM 扩展函数 dm_setoption($link,1,12345,1); 可以解决中文乱码但是 PDO 该怎么与之对应的修改这个设置项?

【问题解决】

dm 官网的 demo 一直都是将数据库跟 php 环境装在一个节点上,这样在设置 dm_svc.conf 重启 fpm 进程就解决乱码了。

如果分开装服务,dm_svc.conf 配置要写在 fpm 节点上,而不是 dm 节点上,重启 fpm 后乱码解决。


北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3