PHP使用ORACLE 数据库时的乱码问题

本人最近换了工作,  这边公司业务使用的DB都是ORACLE数据库. 基于边工作边学习的想法.  我自己也在虚拟机上鼓捣了一个ORACLE.  我使用的系统是CentOS6.2的版本.

从装ORACLE到在WIN下使用SQL DEVELOPER连接都没有问题. 因为我使用的WEB语言是PHP.  我就顺便再搭建了一个PHP的环境.  WEB Server使用的是nginx..  连接ORACLE使用的是PDO_OCI的扩展.  一直也没有出现问题.  但当我插入数据成功后. 再取出数据的时候..  我忽然发现. 我插入的中文数据. 取出来的时候.  尼玛全部变成了 问题(?).. 

我试过各种方式去解决. 也咨询过很多的朋友, 有做PHP的, 有ORACLE的专业DBA.   得到的答复是要统一客户端和服务器端的编码.  我只能一个一个得去尝试.  服务器我安装的时候选择的是UTF8. 并且设置了环境变量export NLS_LANG="SIMPLIFIED CHINESE_CHINA.UTF8" , 并且保持客户端和服务器端的环境变量一样.. 

  但是,  尼玛的..  还是不行. 终于在纠结了好久之前, 在一个群里面一个朋友给了一个解决的方案.   在客户端再设置一个环境变量export NLS_LANGUAGE="SIMPLIFIED CHINESE".  这样才解决了这个问题..   我写这个没别的意思.    因为我在解决这个问题的时候在baidu和google的时候都没有找到相关的答案.  所以希望后面的朋友遇到这个问题能够更快的解决..   在这里我还是要谢谢那些对我提出解决方案的朋友们.  是你们的热心, 让无数人减少了解决问题的时间 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值