Bagaimana Mendeteksi Default Bahasa Browser Klien Menggunakan PHP
Kode berikut ini dapat mendeteksi default bahasa browser yang sedang digunakan oleh klien Anda. Saya sudah mencobanya menggunakan browser Mozilla Firefox versi 3.5.2 dan Internet Explorer versi 8. Di kedua browser tersebut dapat berjalan dengan baik! Jika Anda ingin mencobanya menggunakan browser FF, pastikan terlebih dulu Anda sudah menambahkan beberapa bahasa. Klik menu di browser tersebut: Tools -> Options… -> Content -> Languages, lalu klik tombol Choose…. Tambahkan beberapa bahasa yang tersedia di sana. Selanjutnya, cobalah ganti posisi bahasa yang Anda inginkan, dengan cara memilih bahasa tersebut, lalu klik tombol Move Up untuk membuatnya berada pada posisi pertama di daftar. Jalankan kode berikut, maka Anda akan melihat kode bahasa yang ditampilkan di halaman browser harus sesuai dengan kode bahasa yang telah Anda pilih berada pada urutan teratas.
Untuk membuat kode ini berfungsi, buatlah terlebih dulu sebuah file baru dengan nama detectbrowserlanguage.php. Salin kode berikut ke dalam file tersebut, lalu upload file tadi ke direktori utama dari web server Anda. Panggil atau jalankan file ini melalui browser seperti biasa: http://www.yourdoimain.com/detectbrowserlanguage.php..
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | <?php $prefered_languages = array(); if(preg_match_all("#([^;,]+)(;[^,0-9]*([0-9\.]+)[^,]*)?#i", $_SERVER["HTTP_ACCEPT_LANGUAGE"], $matches, PREG_SET_ORDER)) { $priority = 1.0; foreach($matches as $match) { if(!isset($match[3])) { $pr = $priority; $priority -= 0.001; } else { $pr = floatval($match[3]); } $prefered_languages[$match[1]] = $pr; } arsort($prefered_languages, SORT_NUMERIC); foreach($prefered_languages as $language => $priority) { echo "Browser ini menggunakan bahasa dengan kode: ".$language; exit; } } ?> |
Setiap kali Anda mengganti bahasa yang berada pada posisi pertama di daftar browser Anda, cobalah untuk menjalankan ulang kode di atas di browser Anda, maka seharusnya Anda akan melihat hasil yang sama dengan kode bahasa pada posisi pertama yang baru saja Anda ganti tadi. Kode tadi kadang-kadang Anda perlukan untuk memberikan penanganan yang berbeda sesuai dengan bahasa yang digunakan oleh browser klien Anda.
Cetak Artikel Ini
Komentar Terakhir