外部语言文件

时间:2014-08-04 13:18:00

标签: php

我有一点混乱的问题。

我的网站有多种语言。对于默认标签和标题,我制作了一些外部php文件,其中我有不同语言值的变量。

例如,在文件中我有变量

$ heading =“英语第一标题”

和变量

$ heading =“德语第一标题” ...

在会话中,我已经存储了当前语言的值,并且if状态我知道要采用什么语言变量。

我的问题是下一个:

当我第一次加载页面时,我从外部语言文件调用变量的所有字段都是空的......

而且,当我刷新页面时,变量就在那里,具有正确的价值......

有人可以帮我解决这个问题吗?

我在php文件中的所有内容之前都包含了外部文件,并使用 include 功能。

2 个答案:

答案 0 :(得分:0)

如何包含文件?

也许第一语言变量尚未保存在会话中。

检查语言是否设置总是一个好主意你将使用一些默认值,即英语。

if (!isset($language)) {
    $language = 'en';
}

答案 1 :(得分:0)

从我刚才写的内容中稍微修改一下......也许这会对你有所帮助。

$langSession = $_SESSION['lang'];

if(!isset($_SESSION['lang']){ // if the Session with language was not set

$browserlang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2); // Get the browser setting language, tested it in firefox

   if($browserlang == "de"){
       $_SESSION['lang'] = "de"; // German

   }elseif($browserlang == "nl"){ // Dutch
      $_SESSION['lang'] = "nl";
   }else{ // Else English
      $_SESSION['lang'] = "en";
   }
}
include('language.php');