OOP mutli lang,make文件包含在内

时间:2012-05-12 18:15:32

标签: php oop include

所以我想让我的页面具有多语言功能,如德语,英语和匈牙利语。我开始用PHP学习OOP,现在我强迫自己在所有东西中使用OOP,肯定不是一个好主意,但我试着学习。所以这就是我到目前为止所得到的:

<?php

class class_lang {

    private $language;

    public function __construct() {
        $this->language = $_GET['lang'];
    }

    public function select_lang($var);

        return ('language_'.$this->select_lang($var));
}

?>

那是怎么回事。在我的索引页面上,当我点击1时,我得到3个链接(国旗)我的类从这个URL获取值:href =“index.php?lang = uk”。现在我不确定的是我如何制作字符串:因为我想要包含的lang文件看起来像language_uk.php,language_ge.php等...所以我只想创建该字符串并将其传递给我索引页面的值,所以我可以包括正确的文件。

3 个答案:

答案 0 :(得分:0)

如果我理解正确,这应该有效:

return 'language_' . $this->language;

答案 1 :(得分:0)

尝试制作公共var $语言, 构造可以过滤和验证GET var,将对象保存在某个地方(会话)以与对象进行交互 您可以使用的其他方法 ChangeLang SetLang LoadLangFile SaveToSession 许多其他..

答案 2 :(得分:0)

(1)在PHP中,字段成员以前导“$”声明,但稍后会看到它,并以“$ this-&gt;”作为前缀。所以:

$language;

变为:

$this->language

(2)额外,从方法标题中删除分号:

public function select_lang($var)
{
   return ('language_' . $this->language($var));
}

(3)额外,为返回值的方法添加一个临时变量,语法不需要它,但是,允许你调试(“ToString”),并避免很多问题:

public function select_lang($var)
{
   $Result = ('language_' . $this->language)
   return $Result;
}

干杯。