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 获取语言。

我如何将其转换为 &lang:en 而不是 &lang=en (如果可能的话)

4

2 回答 2

0

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

要使用您的格式,您应该自己解析它,我不建议这样做。

于 2013-04-23T15:44:36.027 回答
0

你可以检查一下isset($_GET["lang:en"])

但这不是建议。=是键和值的标准分隔符。没有必要改变它。

于 2013-04-23T15:46:10.173 回答