Pengaturan Lokal Non-Sistem

Unduh driver PHP

Bagian ini hanya berlaku untuk pengguna Linux dan macOS, khususnya mereka yang berurusan dengan lebih dari satu lokal dalam aplikasi php mereka.

Secara default, Driver Microsoft untuk PHP untuk SQL Server mengambil LC_ALL variabel lingkungan yang ditentukan dalam sistem dan mengambil alih semua kategori lain LC_xxx (mungkin kecuali $LANG atau $LANGUAGE dalam beberapa keadaan), memengaruhi pemisah ribuan, karakter titik desimal, set karakter, bulan, nama hari, pesan aplikasi seperti pesan kesalahan, simbol mata uang, dll.

Dimulai dengan versi 5.8.0, pengguna dapat mengonfigurasi pengaturan pelokalan menggunakan file php.ini, seperti yang ditunjukkan pada contoh di bawah ini.

Mengatur info lokal menggunakan Driver SQLSRV

Tambahkan yang berikut ini di akhir file php.ini Anda:

[sqlsrv]  
sqlsrv.SetLocaleInfo = <option>

Mengatur info lokal menggunakan Driver PDO_SQLSRV

Tambahkan yang berikut ini di akhir file php.ini Anda:

[pdo_sqlsrv]  
pdo_sqlsrv.set_locale_info = <option>

Opsi ini bisa menjadi salah satu nilai berikut:

Opsi Deskripsi perilaku
0 Pengandar mengabaikan setelan lokal sistem.
1 Driver membaca variabel LC_CTYPE.
2 Driver membaca variabel LC_ALL (ini adalah default).

Kategori LC_CTYPE menentukan aturan penanganan karakter, yang mengatur interpretasi urutan byte karakter data teks, klasifikasi karakter, dan perilaku kelas karakter. Ini mengontrol pengenalan huruf besar dan kecil, karakter alfabet dan non-alfabet, dan sebagainya.

Penjelasan

  1. Opsi 0 -- gunakan ini saat Anda tidak ingin mengubah lokal aplikasi.

  2. Opsi 1 -- gunakan ini untuk mengatur hanya nilai LC_CTYPE sistem tanpa memengaruhi kategori lain LC_xxx .

  3. Opsi 2 -- gunakan LC_ALL untuk mengambil alih semua LC_xxx kategori, yang memengaruhi aplikasi php dan ekstensinya.

Jika lokal untuk skrip php apa pun tidak sama dengan yang sistem, Anda mungkin perlu menentukan lokal dalam skrip php dengan memanggil setlocale fungsi bawaan php.

Misalnya, jika default sistem adalah en_US.UTF-8 tetapi skrip php menggunakan de_DE.UTF-8, maka panggil fungsi setlocale() php dengan tepat.

Untuk Opsi 2, tunjukkan lokal yang diinginkan dalam skrip php Anda hanya jika berbeda dari LC_ALL variabel.

Catatan

Jika tidak ada yang didefinisikan dalam php.ini, default saat ini adalah mengambil alih semua pengaturan lokal lainnya berdasarkan LC_ALL, yang tidak akan digunakan lagi. Dalam waktu dekat, defaultnya adalah mengabaikan pengaturan lokal sistem. Dengan demikian, pengguna harus memodifikasi file php.ini yang sesuai jika mereka ingin menjaga perilaku saat ini.

Jika driver sqlsrv dan pdo_sqlsrv diaktifkan, pengaturan opsi yang berbeda untuk dua driver tidak disarankan.