Cara menggunakan PHP untuk sokongan berbilang bahasa

王林
Lepaskan: 2023-06-23 08:44:02
asal
1086 orang telah melayarinya

Dengan perkembangan globalisasi, banyak tapak web dan aplikasi perlu menyokong berbilang bahasa. Dalam kes ini, menggunakan PHP untuk melaksanakan sokongan berbilang bahasa adalah penyelesaian yang patut dipertimbangkan. Dalam artikel ini, kami akan meneroka cara menggunakan PHP untuk sokongan berbilang bahasa.

Pertama, kita perlu mentakrifkan semua bahasa yang disokong. Dalam PHP, kita boleh menggunakan tatasusunan bersekutu untuk menyimpan bahasa ini dan kodnya. Contohnya:

$languages = array(
    "en" => "English",
    "fr" => "French",
    "de" => "German",
    "es" => "Spanish"
);
Salin selepas log masuk

Dalam tatasusunan di atas, setiap bahasa mempunyai kod dan nama. Jika anda perlu menyokong bahasa lain, anda hanya perlu menambah kod dan nama yang sepadan dalam tatasusunan.

Seterusnya, kita perlu mencipta fungsi untuk mendapatkan bahasa yang dipilih oleh pengguna. Sebelum itu, kita perlu memahami bagaimana untuk mendapatkan kod bahasa dalam PHP. Salah satu cara ialah menggunakan pengepala penyemak imbas. Sebagai contoh, kita boleh menggunakan kod berikut untuk mendapatkan pilihan bahasa penyemak imbas:

$language = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2);
Salin selepas log masuk

Ini akan mengembalikan kod untuk bahasa pilihan penyemak imbas, seperti "en" untuk bahasa Inggeris, "fr" untuk bahasa Perancis dan sebagainya. pada.

Kami boleh menggunakan kod ini untuk mendapatkan nama bahasa daripada $languages ​​​​array seperti yang ditunjukkan dalam kod berikut:

function get_language_name($code) {
    global $languages;
    return $languages[$code];
}
Salin selepas log masuk

Sekarang kami telah melaksanakan fungsi untuk memilih bahasa oleh pengguna. Tetapi kita perlu membuat beberapa fail terjemahan untuk menyimpan terjemahan untuk bahasa ini. Setiap fail terjemahan mengandungi tatasusunan bersekutu yang mengandungi teks terjemahan dan terjemahan yang sepadan. Contohnya, berikut ialah fail terjemahan Inggeris ke Perancis:

<?php
$translations = array(
    "Welcome" => "Bienvenue",
    "Hello" => "Bonjour",
    "Goodbye" => "Au revoir"
);
?>
Salin selepas log masuk

Kami boleh mencipta berbilang fail terjemahan untuk menyokong berbilang bahasa. Sebagai contoh, kita boleh mencipta fail terjemahan Inggeris ke Sepanyol seperti ini:

<?php
$translations = array(
    "Welcome" => "Bienvenido",
    "Hello" => "Hola",
    "Goodbye" => "Adiós"
);
?>
Salin selepas log masuk

Seterusnya, kita perlu menulis fungsi untuk mendapatkan teks terjemahan. Kami boleh menggunakan kod berikut untuk mendapatkan fail terjemahan untuk bahasa yang dikehendaki:

function get_translation_file($language) {
    return "translations/{$language}.php";
}
Salin selepas log masuk

Di sini, kami menganggap bahawa setiap fail terjemahan disimpan dalam folder yang dipanggil "terjemahan". Kita boleh menggunakan fungsi ini untuk mendapatkan fail terjemahan dalam bahasa yang diperlukan.

Akhir sekali, kita perlu menulis fungsi untuk mendapatkan terjemahan teks yang kita inginkan. Berikut ialah salah satu fungsi tersebut:

function get_translation($text, $language) {
    $translation_file = get_translation_file($language);
    if (file_exists($translation_file)) {
        include($translation_file);
        if (isset($translations[$text])) {
            return $translations[$text];
        }
    }
    return $text;
}
Salin selepas log masuk

Dalam fungsi ini, kami mula-mula mendapatkan fail terjemahan untuk bahasa yang diperlukan. Jika fail itu wujud, kami memasukkannya dan menyemak sama ada teks yang diperlukan diterjemahkan. Jika ya, teks yang diterjemahkan dikembalikan. Jika tidak, teks asal dikembalikan.

Kini, kami telah melaksanakan aplikasi PHP yang menyokong berbilang bahasa! Untuk menggunakan terjemahan, cuma panggil fungsi get_translation, seperti yang ditunjukkan dalam kod berikut:

echo get_translation("Welcome", "fr"); //输出“Bienvenue”
echo get_translation("Hello", "es"); //输出“Hola”
echo get_translation("Goodbye", "en"); //输出“Goodbye”
Salin selepas log masuk

Di sini, kami menterjemah "Selamat Datang" kepada Bahasa Perancis, "Hello" kepada Bahasa Sepanyol dan "Selamat Tinggal" untuk Bahasa Inggeris.

Dalam artikel ini, kami meneroka cara melaksanakan sokongan berbilang bahasa menggunakan PHP. Kami boleh melaksanakan sokongan berbilang bahasa dengan mudah dengan mentakrifkan bahasa yang disokong, mendapatkan bahasa pilihan pengguna, mencipta fail terjemahan dan fungsi menulis untuk mendapatkan terjemahan.

Atas ialah kandungan terperinci Cara menggunakan PHP untuk sokongan berbilang bahasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!