PHP setlocale() Tiada Kesan: Petua untuk Memaparkan Nama Bulan dalam Bahasa Jerman
Fungsi setlocale() sering digunakan untuk menetapkan bahasa untuk mengendalikan perwakilan tarikh dan masa. Walau bagaimanapun, kadangkala ia mungkin tidak mempunyai kesan yang diingini, seperti semasa cuba mengeluarkan nama bulan dalam bahasa Jerman.
Menetapkan Tempatan Jerman
Dalam PHP, anda boleh menetapkan tempat untuk semua jenis data menggunakan LC_ALL:
setlocale(LC_ALL, 'de_DE.utf8');
Di sini, 'de_DE.utf8' menentukan bahasa Jerman setempat dengan pengekodan UTF-8. Walau bagaimanapun, anda mungkin perlu mencuba pelbagai tetapan setempat, seperti 'de_DE', 'de' atau 'ge', untuk mencari tetapan yang berfungsi pada pelayan anda.
Menyemak Tempatan Dipasang
Jika setlocale() masih tidak menetapkan tempat Jerman, ini mungkin menunjukkan bahawa tempat Jerman tidak dipasang pada pelayan. Anda boleh menyemak tempat yang dipasang menggunakan arahan 'locale -a' jika anda mempunyai akses shell.
Pendekatan Alternatif
Jika akses shell tidak tersedia dan tempat yang dipasang kekurangan tempat yang diingini bahasa, pertimbangkan pendekatan alternatif:
$month_names = [ 1 => 'Januar', 2 => 'Februar', 3 => 'März' ]; echo $month_names[date('m')];
Atas ialah kandungan terperinci Mengapakah `setlocale()` PHP tidak menukar Nama Bulan kepada bahasa Jerman?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!