1

我正在将我的 CakePHP 站点从本地 Xampp 安装迁移到 EC2 ubuntu 环境。我移动了数据库,并将 Web 目录文件复制到了 EC2 实例,但在访问该站点时出现此错误:

Fatal error: Class 'AppController' not found in /var/www/cakephp/lib/Cake/Controller/CakeErrorController.php on line 31

我查看了 Apache 错误日志,发现它不喜欢的部分是:

$this->Auth->user()['role']

错误表示 PHP 解析器不期望 '['。这在默认的本地 Xampp 安装中一切正常,所以我假设这是两个安装之间的 PHP 差异?

Xampp: PHP 5.4.7
EC2: PHP 5.3.10

任何设置或任何可能导致这种行为的想法?

4

1 回答 1

4

这是 php 5.4 中的一个新功能,请参阅http://docs.php.net/manual/en/migration54.new-features.php第三个项目。

对于 php 5.3,您需要将其分配给一个变量

$user = $this->Auth->user()
$role = $user['role'];
于 2013-01-18T14:33:12.657 回答