Bugün yaklaşık 2 saatimi Oracle’dan çektiğim verideki Türkçe karakterlerin yazdığım PHP kodunda garip görünmesi sorununu çözmek için harcadım.
Oracle kullanıken belirleyebileceğiniz bazı değişkenler bulunuyor. Bunlardan bazılarını PHP kodu içinde veya Apache’yi çalıştırırken belirtmek gerekiyor;
PutEnv("NLS_LANG=TURKISH_TURKEY.TR8MSWIN1254");
PutEnv("ORACLE_SID=AKI1");
PutEnv("ORACLE_HOME=/opt/oracle/product/10.1.0");
PutEnv("TNS_ADMIN=/etc/oracle");
PutEnv("LD_LIBRARY_PATH=/usr/lib/oracle/10.1.0.3/client/lib");
Buradaki NLS_LANG veritabanından veri çekerken veya eklerken hangi karakter setini kullanacağınızı belirtiyor. Bu değişkenin değerini
PutEnv("NLS_LANG=.UTF8");
yaptığınız zaman Türkçe karakter sorunu kökünden çözülüyor.
Sonunda ya!!!