2011-03-08 105 views
0

我想創建一個默認爲英文的多語種網站,例如example.com,子域名fr.example.com,de.example.com,it.example.com ...帶子域名的多語網站

現在,如果用戶選擇fr.example.com,該網站的語言將是法語。

如果子域是FR,PHP將包括lang_fr.php,如果取消,PHP將包括lang_de.php,但如果沒有子域,PHP必須包括默認文件lang_en.php

該網站必須只有一個源代碼,內容和樣式,它必須使用與example.com根目錄相同的資源。

那麼如何使用Apache將URL從fr.example.com改寫爲example.com/index.php?lang=fr 和example.com/到example.com/index.php?lang=en

回答

1

你不需要重寫任何東西。只需檢查$ _SERVER ['SERVER_NAME']。

function get_language() 
{ 
    //not tested 
    $default_language = 'en'; 
    $language = array_shift(explode('.', $_SERVER['SERVER_NAME'])); 
    if (str_len($language) > 2) 
    { 
    $language = $default_language; 
    } 
    return $language; 
} 
+0

這就是我所尋找的,但有一些小錯誤,我糾正,然後代碼工作。謝謝。 – MohamedKadri 2011-03-10 02:08:39