使用html按钮更改网站的语言

ken*_*sil 7 html php variables button

在PHP中,我想在单击按钮时更改站点的语言(英语,德语等).这是解决这个问题的正确方法吗?

<?php 
  $language;
  if ($language == "en") {
    include("headerEn.php");
  } else {
    include("header.php");
  } 
?>
<a href="index.php"><?php $language = "en"; ?>
<img src="images/language/languageNO.png"></a>

<a href="index.php"><?php $language = "no"; ?>
<img src="images/language/languageEN.png"></a>
Run Code Online (Sandbox Code Playgroud)

更改网站语言的最佳方法是什么,并在用户返回时保持不变?

Nul*_*teя 10

你可以做到这一点

<a href="index.php?language=en">
<a href="index.php?language=no">
Run Code Online (Sandbox Code Playgroud)

并获取语言并将它们存储在cookie中并根据cookie包含文件

if ( !empty($_GET['language']) ) {
    $_COOKIE['language'] = $_GET['language'] === 'en' ? 'en' : 'nl';
} else {
    $_COOKIE['language'] = 'nl';
}
setcookie('language', $_COOKIE['language']);
Run Code Online (Sandbox Code Playgroud)

然后

if ( $_COOKIE['language'] == "en") {
   include("headerEn.php");
} else {
   include("header.php");
} ?>
Run Code Online (Sandbox Code Playgroud)

  • 我认为else部分应该是`else if(empty($ _ COOKIE ['language']))`,以避免在cookie(而不是请求)包含选择语言时将语言重置为'nl'. (3认同)