1

次のようなリンクを含むページがあります。

<a href="http://mysite.com/page.php">...</a>

また、現在の URL にGET 変数?lang=enがある場合もあります。手動で追加したり、各リンクに変数を追加したりせずに、ページからすべてのリンクに GET 変数 ?lang=en を追加するにはどうすればよいですか? ありがとう。

4

3 に答える 3

0

$_ENV['lang'] = 'en'基本(config.phpを想定)ファイルに設定します

getenv('lang')またはで取得する $_ENV['lang']

Refernece

于 2012-04-17T12:13:10.233 に答える
0

lang=enをセッション変数に追加$_SESSION['lang']='en'し、すべてのページで & 初期化しました。

于 2012-04-17T12:15:30.637 に答える
0

出力バッファリングまたは Apache フィルターを使用して出力を解析し、lang クエリ文字列パラメーターをすべてのリンクに自動的に追加することもできますが、これはあまり効率的ではありません。

各リンクに手動で追加したくない場合は、セッション変数に保存することをお勧めします。

各ページの開始時 (おそらく一般的なインクルード スクリプト内) に、次のようなものを含めることができます。

<?php
define('DEFAULT_LANG', 'en_GB');

session_start();

// check if a new lang has been specified.
if (isset($_GET['lang'])) {

    // yes, so use the requested lang
    $_SESSION['lang'] = $_GET['lang'];

    // otherwise, check if a lang was previously set
} else if ( ! isset($_SESSION['lang']) ) {

    // no, so use default lang:
    $_SESSION['lang'] = DEFAULT_LANG;

}
?>

次に、ページの残りの部分で$_SESSION['lang']代わりに使用する必要があります。$_GET['lang']また、要求された言語が有効で利用可能であることを確認するために、何らかの検証を追加することもできます。

于 2012-04-17T12:19:10.853 に答える