我有一个项目,从mysql迁移到oracle rac中,数据库为utf8编码格式,用php进行简单连接取出的中文均为问号,百度后发现在进行数据库连接时需要指定连接编码为utf8,我指定了环境变量,并在测试页打印了php中全局环境变量,phpinfo(info_environment),结果就正常了。如果不指定,php环境变量页面没显示nls_lang的变量信息,则依旧乱码,现在有什么办法,我有好几十个php页面,难道都要手动在开头putenv(nls_lang)定义一下么。求高手赐招能够在php服务运行时就自带环境变量nls_lang的参数。并自动在info_environment显示成功。
补充下,我是centos6.5,已经在.bash_profile中定义了nls_lang。但貌似不起作用。php是5.6,web服务器是nginx 1.9
ORACLE 没有 utf8 只有 utf-8
你在链接 ORACLE 时就应声明所用字符集
只有 ORACLE 8 及以下,才需要设置环境变量
ORACLE 没有 utf8 只有 utf-8
你在链接 ORACLE 时就应声明所用字符集
只有 ORACLE 8 及以下,才需要设置环境变量
$conn = OCI_Logon('orcl','orcl','127.0.0.1/orcl','UTF8');或者putenv("NLS_LANG=american_america,UTF8"); 我手动输出系统环境变量nls_lang,结果是空的,
phpinfo(INFO_ENVIRONMENT);
?>
求赐教如何才能在PHP初始化的时候装载系统环境变量,换句话说如何指定PHP的环境变量,bash_profile不起作用。
写成 $conn = OCI_Logon('orcl','orcl','127.0.0.1/orcl','UTF8'); 就那么费事吗?
java 是通过 jdbc 进行数据库操作的,php 是通过客户端的
所以后者要多做一些设置上的事情
额,其实这公司是别的软件公司的产品,原生MYSQL,后来由于公司要求统一用ORACLE RAC数据库,迁移过去的。。好吧我找找他们的数据库连接是写在哪的,自己改下算了。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号