Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 用户语言重定向+;根目录上的默认语言:它不使用';行不通_Php_Cookies_Redirect_Localization - Fatal编程技术网

Php 用户语言重定向+;根目录上的默认语言:它不使用';行不通

Php 用户语言重定向+;根目录上的默认语言:它不使用';行不通,php,cookies,redirect,localization,Php,Cookies,Redirect,Localization,对不起,我的英语太差了 我使用此方法根据用户语言提供重定向,并将数据保存在cookie中: 但是,如果我决定选择域根作为默认语言,则重定向不起作用,如下所示: <?php $lang=$_COOKIE["lang"]; switch ($lang) { case 'en': header('Location: http://hawalove.com/'); break; case 'fr': header('Location: http://www.hawal

对不起,我的英语太差了

我使用此方法根据用户语言提供重定向,并将数据保存在cookie中:

但是,如果我决定选择域根作为默认语言,则重定向不起作用,如下所示:

<?php $lang=$_COOKIE["lang"];
switch ($lang) {
case 'en':
    header('Location:  http://hawalove.com/');
    break;
case 'fr':
    header('Location:  http://www.hawalove.com/fr');
    break;
#Get the default language of the browser if no cookies are found.
default:
    $lang = getDefaultLanguage(); 
    switch ($lang) { 
    case 'fr' : 
        header('Location:  http://www.hawalove.com/fr'); 
        break; 
    default: 
        header('Location: http://hawalove.com/'); 
        break; 
    } 
    break;
}
?>

你能帮我做到这一点吗?我想在root(mydomain.com)上有英文版本,在mydomain.com/fr上有法文版本

谢谢。

我猜“不起作用”意味着“英语使用者无限的重定向循环”

当所选语言为英语时,您所需要的只是一种完全不重定向的方法。添加关联数组,将支持的语言映射到重定向位置,然后执行以下操作:

  • $\u COOKIE[“lang”]
    中抓取
    $lang
  • 如果
    $lang
    不是受支持的语言(甚至未设置),则
    $lang=getDefaultLanguage()
  • 如果
    $lang
    不是
    'en'
    ,则重定向,否则显示英文主页而不重定向
  • 可以将关联数组用于(2)和(3)。基本策略很简单:如果语言最终是英语,就不要重定向。一旦你有了一种有效的语言,你可能也会想设置你的语言cookie。

    我猜“不起作用”意味着“英语使用者无限的重定向循环”

    当所选语言为英语时,您所需要的只是一种完全不重定向的方法。添加关联数组,将支持的语言映射到重定向位置,然后执行以下操作:

  • $\u COOKIE[“lang”]
    中抓取
    $lang
  • 如果
    $lang
    不是受支持的语言(甚至未设置),则
    $lang=getDefaultLanguage()
  • 如果
    $lang
    不是
    'en'
    ,则重定向,否则显示英文主页而不重定向
  • 可以将关联数组用于(2)和(3)。基本策略很简单:如果语言最终是英语,就不要重定向。一旦有了有效的语言,您可能也会希望设置语言cookie