我试图做一个多语言网站后this的例子。 我做了一个文件夹语言,并创建了2个文件en.php和gr.php。
这里有我的文件
语言/ gr.php
<?php
$lang = array(
//nav bar
'nav1' => 'Αρχική',
'nav2' => 'Δυτική Αττική',
'nav3' => 'Εκδηλώσεις',
'nav4' => 'Σύλλογοι',
'nav5' => 'Καταστήματα'
);
?>
语言/ en.php
<?php
$lang = array(
//nav bar
'nav1' => 'Home',
'nav2' => 'West Attica',
'nav3' => 'News/Events',
'nav4' => 'Associations',
'nav5' => 'Stores'
);
?>
和ini.php
<?php
session_start();
$allowed_lang = array('gr', 'en');
if (isset($_GET['lang']) === true && in_array($_GET['lang'], $allowed_lang) === true){
$_SESSION['lang'] = $_GET['lang'];
}
include 'language/' . $_SESSION['lang'] . '.php';
?>
当我我试图运行它,我得到这个错误
说明:未定义指数:朗在上线/home/user/public_html/init.php 10
警告:包括(语言/ .PHP):未能打开流:在没有这样的文件或目录/在/ home/user/php中,include(include_path ='。:/ usr/share/php')打开'language/.php'失败。上线的public_html/10的init.php
试图呼应$_GET['lang'];
但结果没有值
这意味着$_GET['lang']
为空
我在想什么?
修复路径,其余应遵循 –
如果什么也没有郎$ _GET?我认为你应该为$ _SESSION ['lang'] – Andreas
提供一个初始值,所以现在两个答案都是正确的,哪一个我应该接受为正确的? – vaggelis