2015-05-02 50 views
0

自從我轉移到Apache 2 CentOS以來,發生此語法錯誤。移動服務器後出現PHP語法錯誤

[Sat May 02 17:34:46 2015] [error] [client *] PHP Parse error: syntax error, unexpected '[' in /var/www/html/index.php on line

的源代碼可以在下面找到,我發表過評論,其中出現了錯誤:

require('roblox.php'); 
$config = require('config.php'); 
/*if (isset($_GET['cookie'])){ 
    echo (new RBXLim)->get_cookie(); 
    return; 
}*/ 
$page = isset($_GET['page']) ? $_GET['page'] : false; 
$rbxlim = new RBXLim; 
$connection = $rbxlim->get_connection(); 
var_dump($connection); 
session_start(); 
if (!isset($_SESSION['session'])){ 
    $_SESSION['session'] = md5(microtime().rand()); 
} 
if (isset($_SESSION['logged_in'])){ 
    $_SESSION['premium'] = $connection->query("SELECT premium FROM registered WHERE user_id=" . $_SESSION['user_id'])->fetch_assoc()['premium']; // this is where the error occurs 
} 

我跑我的個人計算機上的PHP代碼,它完美地工作,雖然我當在我的VPS上運行它錯誤。

有沒有人遇到過這個?

+0

檢查PHP –

+0

的版本您的原始服務器可能是PHP 5.4+,您的新服務器似乎是PHP <= 5.3,因爲它似乎不支持數組解引用。 –

回答

1

PHP支持返回值的數組derefencing爲of PHP 5.4 only

As of PHP 5.4 it is possible to array dereference the result of a function or method call directly. Before it was only possible using a temporary variable.

你的VPS可能運行PHP 5.3以下。您應該升級它,如PHP 5.3 is EOL

+0

是的。這似乎是問題。我會盡快將您的答案標記爲正確。 (我在VPS上有5.3版本。) – wateraura

相關問題