1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > PHP连接ORACLE时乱码 手动PUTENV(NLS_LANG)环境变量后正常!

PHP连接ORACLE时乱码 手动PUTENV(NLS_LANG)环境变量后正常!

时间:2019-10-11 09:27:31

相关推荐

PHP连接ORACLE时乱码 手动PUTENV(NLS_LANG)环境变量后正常!

后端开发|php教程

PHP连接ORACLE时乱码,手动PUTENV(NLS_LANG)环境变量后正常!

后端开发-php教程

我有一个项目,从MYSQL迁移到ORACLE RAC中,数据库为UTF8编码格式,用PHP进行简单连接取出的中文均为问号,百度后发现在进行数据库连接时需要指定连接编码为UTF8,我指定了环境变量,并在测试页打印了PHP中全局环境变量,phpinfo(INFO_ENVIRONMENT),结果就正常了。如果不指定,PHP环境变量页面没显示nls_lang的变量信息,则依旧乱码,现在有什么办法,我有好几十个PHP页面,难道都要手动在开头PUTENV(NLS_LANG)定义一下么。求高手赐招能够在PHP服务运行时就自带环境变量nls_lang的参数。并自动在INFO_ENVIRONMENT显示成功。

一元夺宝源码能干什么,vscode c语言操作,ubuntu支持联想,tomcat环境变,sqlite3.dll杀毒,微信电脑版flash插件,怎么搭建前后分离的前端框架,骷髅爬虫迷你版粘土,php 正则 http,泉州seo付费推广,php ap源代码网站,简单的jsp网页源码,dz论坛手机门户模板下载lzw

补充下,我是centos6.5,已经在.bash_profile中定义了nls_lang。但貌似不起作用。PHP是5.6,WEB服务器是nginx 1.9

影视推荐源码,怎么访问ubuntu硬盘,爬虫热带雨林,php phardata,seo培训客场lzw

公众号系统源码开发环境,ubuntu 英雄无敌,python爬虫程序小说,基php,唐山seo规则lzw

回复讨论(解决方案)

ORACLE 没有 utf8 只有 utf-8

你在链接 ORACLE 时就应声明所用字符集

只有 ORACLE 8 及以下,才需要设置环境变量

ORACLE 没有 utf8 只有 utf-8

你在链接 ORACLE 时就应声明所用字符集

只有 ORACLE 8 及以下,才需要设置环境变量

您说的对,但是有没有办法设置默认字符集,即和JAVA那样不在PHP连接字符串中

$conn = OCI_Logon(orcl,orcl,127.0.0.1/orcl,UTF8);或者putenv("NLS_LANG=american_america,UTF8");

两者都能够正常。我现在就是想和JAVA那样不用事先申明,因为我的TEST.PHP文本就是UTF8格式,数据库也是UTF8格式,应该能够自动匹配吧?

我手动输出系统环境变量nls_lang,结果是空的,

<?php

phpinfo(INFO_ENVIRONMENT);

?>

求赐教如何才能在PHP初始化的时候装载系统环境变量,换句话说如何指定PHP的环境变量,bash_profile不起作用。

写成 $conn = OCI_Logon(‘orcl’,’orcl’,’127.0.0.1/orcl’,’UTF8′); 就那么费事吗?

java 是通过 jdbc 进行数据库操作的,php 是通过客户端的

所以后者要多做一些设置上的事情

额,其实这公司是别的软件公司的产品,原生MYSQL,后来由于公司要求统一用ORACLE RAC数据库,迁移过去的。。好吧我找找他们的数据库连接是写在哪的,自己改下算了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。