语法错误,意外T_CONSTANT_ENCAPSED_STRING,期待')'

时间:2012-11-19 00:03:39

标签: multilingual php

我已按照these YT videos中的教程来构建PHP语言切换器和双语站点(无框架)。但是,当我尝试在WAMP中测试它时,我收到以下错误:

解析错误:第6行的C:\ wamp \ www \ skydoll \ lang \ francais.php中的语法错误,意外的T_CONSTANT_ENCAPSED_STRING,期待')'

通过搜索此站点我发现这通常是由报告错误行上方的行引起的,但对于PHP新手我似乎无法找到代码的任何错误。

<?php

$lang = array(
'hello' => 'Bonjour',
'goodbye' => 'Au revoir'
);

?>

一切看起来不合适?

然而,在我达到这一点之前,我在init.php文件中遇到了其他语法错误,这是调用francais.php的文件。错误可能来自那里吗?我将包含以下代码:

<?php 
session_start();

$allowed_lang = array('english', 'francais');

if (isset($_GET['lang']) === true && in_array($_GET['lang'], allowed_lang) === true) {
$_SESSION['lang'] = $_GET['lang'];
} else if (isset($_SESSION['lang']) === false) {
$_SESSION['lang'] = 'francais';
}

include 'lang/' . $_SESSION['lang'] . '.php';
?>

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

if (isset($_GET['lang']) === true && in_array($_GET['lang'], allowed_lang) === true) {

应该是:

if (isset($_GET['lang']) === true && in_array($_GET['lang'], $allowed_lang) === true) {

答案 1 :(得分:0)

您在$

之前忘记了allowed_lang个字符