所以我想让我的页面具有多语言功能,如德语,英语和匈牙利语。我开始用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等...所以我只想创建该字符串并将其传递给我索引页面的值,所以我可以包括正确的文件。
答案 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;
}
干杯。