oracle apache php乱码问题

办法一

select * from V$NLS_PARAMETERS

  $conn = oci_connect('scott', 'donkey', 'demo', 'zhs16gbk');

 while ($dat = oci_fetch_row($cur)) {  
    print_r(iconv('gb2312', 'utf-8', $dat[0]));  //$nickname = mb_convert_encoding($dat[0], 'utf-8', 'gbk');  
  } 
 

或者 $c1 = oci_connect("scott", "tiger", $db, 'UTF8');

 

办法二:

安装好服务器后,用客户端看服务器的语言

sql>select * from V$NLS_PARAMETERS Where PARAMETER=''NLS_LANGUAGE'';

比如结果是"SIMPLIFIED CHINESE”

在Apache里加入环境变量

export NLS_LANGUAGE="SIMPLIFIED CHINESE"

在/etc/init.d/httpd里加入,源代码安装的Apache写一个脚本调用apachectl
或者需要/etc/init.d/httpd里加入里引入环境变量,由于本机没有那个启动文件,所以只能在apachectl里加入如下代码:
export NLS_LANGUAGE="SIMPLIFIED CHINESE"。

 

方法三:httpd.conf里加一行AddDefaultCharset GB2312  /off
方法四:htmlspecialchars() 支持双字节字符,比如汉字
              htmlentities()支持单字节字符

 

方法五:apache的配置文件已经加了AddDefaultCharset   GB2312 
             php的配置文件已经加了   AddDefaultCharset   GB2312  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值