2013-04-23 81 views
0

這是我第一次問這裏,所以不要評論我是否貼錯了。轉換多國語言功能

我有這個功能我多郎支持

<? 
header('Cache-control: private'); // IE 6 FIX 
if(isSet($_GET['lang'])) 
{ 
    $lang = $_GET['lang']; 
    // register the session and set the cookie 
    $_SESSION['lang'] = $lang; 
    setcookie('lang', $lang, time() + (3600 * 24 * 30)); 
} 
else if(isSet($_SESSION['lang'])) 
{ 
    $lang = $_SESSION['lang']; 
} 
else if(isSet($_COOKIE['lang'])) 
{ 
    $lang = $_COOKIE['lang']; 
} 
else 
{ 
    $lang = 'en'; 
} 
switch ($lang) { 
    case 'bg': 
    $lang_file = 'bg.php'; 
    break; 
    default: 
    $lang_file = 'en.php'; 
} 
define('IN_VALID',true); 
include_once '_src/lang/'.$lang_file; 
?> 

它通過& LANG = EN或& LANG = BG得到的語言。

我怎樣才能將其轉換得到&郎鹹平:恩,而不是&郎= EN(如果可能的話)

+0

請正確縮進你的代碼 – Bojangles 2013-04-23 15:43:38

+0

如果你知道如何使用它,你可以使用url rewrite來做到這一點 – Uby 2013-04-23 15:47:13

回答

0

?key1=value1&key2=value2是標準application/x-www-form-urlencoded格式。

要使用你的格式,你應該自己解析它,我不建議的路線。

+0

Uby你給了我一個好主意我用'RewriteRule^lang:(。*)$ index.php ?lang = $ 1 [NE,L]'現在我必須做第二步,因爲我使用'RewriteCond%{REQUEST_FILENAME}!-f RewriteCond%{REQUEST_FILENAME}!-d RewriteRule ^(。*)$ index.php? p =%{REQUEST_URI}&%{QUERY_STRING} [NE,L]'用於獲取我需要編寫RewriteRule的頁面以獲取example.com/page/setlang:en – NeZiRuS 2013-04-23 15:57:18

0

您可以檢查isset($_GET["lang:en"])

但這不是建議。 =是鍵和值的標準分隔符。沒有必要改變它。