gentoo의 php에서 oracle을 사용하기위한 tip
oracle에서의 system환경변수도 중요하기는 하지만....
일단 순서가 몇가지 있을듯 하네요
1. oracle변수와 상관없이 apache의 변수를 지정해주기
/etc/apache/modules.d/xx_oracle.conf
SetEnv ORACLE_HOME /usr/lib/oracle/10.2.0.3/client
SetEnv TNS_ADMIN /usr/lib/oracle/10.2.0.3/client/network/admin
SetEnv LD_LIBRARY_PATH /usr/lib/oracle/10.2.0.3/client/lib
SetEnv ORA_NLS /usr/lib/oracle/10.2.0.3/client/nls/data
SetEnv NLS_LANG American_America.UTF8
SetEnv LANG ko_KR.UTF8
SetEnv LC_ALL ko_KR.UTF8
이런식으로 필요한 환경변수를 잡아줄것
NLS_LANG은 대단히 중요하다
2. php의 oci_connect함수
$conn=oci_connect("kdisk01", "kdmixer10", "192.168.0.215:1521/kdora10", "AL32UTF8");
중요한건 oracle에 설정되어있는 NLS_CHARACTERSET에 맞춰주면된다.
oracle에 대한 oci_connect를 맞춰주면 그것을 NLS_LANG에 지정한 character set으로
자동으로 변환을 시켜주게된다.
이것은 oci에서 데이터를 얻어오는 과정에서 oci가 자동으로 동작하게 되는것.