2种语言​​;在网站上使用php

2种语言​​;在网站上使用php,php,cookies,Php,Cookies,请帮助组织双语网站 所以首先有两个文件eng.php和es.php,它们将存储在翻译站点中 例如: $lang['hi'] = 'Hi'; 我如何在网站上组织进一步的语言选择,并在cookies中记录有关该语言的信息?您可以有两个这样的文件 en.php的源代码: $lang = array( 'hi' => 'Hi' ); $lang = array( 'hi' => 'Hello' ); es.php的源代码: $lang = array( 'hi'

请帮助组织双语网站

所以首先有两个文件eng.php和es.php,它们将存储在翻译站点中

例如:

$lang['hi'] = 'Hi';

我如何在网站上组织进一步的语言选择,并在cookies中记录有关该语言的信息?

您可以有两个这样的文件

en.php的源代码:

$lang = array(
    'hi' => 'Hi'
);
$lang = array(
    'hi' => 'Hello'
);
es.php的源代码

$lang = array(
    'hi' => 'Hi'
);
$lang = array(
    'hi' => 'Hello'
);
对于主内容文件,源文件应如下所示:

<?php
    session_start(); // Make sure you initialize cookies / session
    $allowedLangs = array('en', 'es'); // Array with allowed values
    if(isset($_SESSION['lang'])) { // If already user had stored language in session
        include $_SESSION['lang'] . ".php";
    } elseif(isset($_GET['lang']) && in_array($_GET['lang'], allowedLangs)) { // If user had requested like index.php?lang=en
        include $_GET['lang'] . ".php";
        $_SESSION['lang'] = $_GET['lang']; // Update the session with the language
    } else { // If user is visiting for the first time, then...
        include "en.php";
    }

    echo $lang['hi'];
?>


选择语言。。。
es.php//eng.php

<!--Your Content-->
<?php
    setcookie("lang","es/eng",time()+SECONDS_YOU_WANT)
?>


您需要验证“允许的”$\u GET['lang']值,否则您将面临非法包含文件的风险,例如“index.php?lang=../../../../../../../../../../../../../../../../../../../../../../etc/passwd%00”非常感谢您的回复。。。如果我可以让用户选择语言,您可以使用pagename.php?lang=en或pagename.php?lang=es@mulekula是的,你可以用这个。但是不需要
name=“es”
,在本上下文中不需要。无论何时使用,请将其命名为
/?lang=es
,而不仅仅是
?lang=es
,有时可能无法使用@西里尔:我同意你的看法。对不起,我忘了!我有一些问题警告:无法修改标题信息-标题已由H:\home\werwolf.com.ua\www\index.php:6处的H:\home\werwolf.com.ua\www\index.php第17write ob_start()行发送;在页面顶部第1行检查UTF-8 BOM的代码。试图翻译,但什么也没有出来。使用echo$lang=['hi'];