0

そのため、ドイツ語、英語、ハンガリー語などの多言語機能を備えたページを作成したいと思います。私は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などのように見せます...したがって、その文字列を作成して、それを自分の文字列に戻したいだけです。値にページをインデックス付けして、適切なファイルを含めることができるようにします。

4

3 に答える 3

0

私がそれを正しく理解していれば、これはうまくいくはずです:

return 'language_' . $this->language;
于 2012-05-12T18:34:37.217 に答える
0

public var $ languageを作成してみてください。構築により、GET varをフィルタリングおよび検証し、オブジェクトをどこかに保存して(セッション)、オブジェクトと対話することができます。使用できる追加のメソッドは、ChangeLang SetLangLoadLangFileSaveToSessionです。

于 2012-05-12T18:48:36.630 に答える
0

(1)PHPでは、フィールドメンバーは先頭に「$」を付けて宣言されますが、後でそれを付けずに、「$this->」というプレフィックスを付けます。それで:

$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;
}

乾杯。

于 2012-06-07T19:10:38.090 に答える