Php 无法使用';对象作为类名,因为它是2.2.x中保留的

Php 无法使用';对象作为类名,因为它是2.2.x中保留的,php,cakephp,php-7.2,cakephp-2.2,cakephp-2.x,Php,Cakephp,Php 7.2,Cakephp 2.2,Cakephp 2.x,我在尝试设置我们正在运行的站点的测试副本时遇到了一个问题,我在Mint VM下安装了文件和应用程序,当我将apache指向目录时,我得到了一个500错误和以下错误- [Thu Oct 25 15:09:39.714201 2018] [php7:error] [pid 8945] [client 192.168.0.14:52237] PHP Fatal error: Cannot use 'Object' as class name as it is reserved in /home/ja

我在尝试设置我们正在运行的站点的测试副本时遇到了一个问题,我在Mint VM下安装了文件和应用程序,当我将apache指向目录时,我得到了一个500错误和以下错误-

[Thu Oct 25 15:09:39.714201 2018] [php7:error] [pid 8945] [client 192.168.0.14:52237] PHP Fatal error:  Cannot use 'Object' as class name as it is reserved in /home/jamesmcgrath/Documents/dashboard/lib/Cake/Core/Object.php on line 30
[Thu Oct 25 15:09:39.714547 2018] [php7:error] [pid 8945] [client 192.168.0.14:52237] PHP Fatal error:  Uncaught Error: Class 'Controller' not found in /home/jamesmcgrath/Documents/dashboard/lib/Cake/Error/ExceptionRenderer.php:174\nStack trace:\n#0 /home/jamesmcgrath/Documents/dashboard/lib/Cake/Error/ExceptionRenderer.php(92): ExceptionRenderer->_getController(Object(InternalErrorException))\n#1 /home/jamesmcgrath/Documents/dashboard/lib/Cake/Error/ErrorHandler.php(126): ExceptionRenderer->__construct(Object(InternalErrorException))\n#2 /home/jamesmcgrath/Documents/dashboard/lib/Cake/Error/ErrorHandler.php(284): ErrorHandler::handleException(Object(InternalErrorException))\n#3 /home/jamesmcgrath/Documents/dashboard/lib/Cake/Error/ErrorHandler.php(213): ErrorHandler::handleFatalError(64, 'Cannot use 'Obj...', '/home/jamesmcgr...', 30)\n#4 /home/jamesmcgrath/Documents/dashboard/lib/Cake/Core/App.php(933): ErrorHandler::handleError(64, 'Cannot use 'Obj...', '/home/jamesmcgr...', 30, Array)\n#5 /home/jamesmcgrath/Documents/dashboard/lib/Cake/Core/App.php(906): App::_checkFatalError()\n#6 [internal function]: App::shutdow in /home/jamesmcgrath/Documents/dashboard/lib/Cake/Error/ExceptionRenderer.php on line 174
奇怪的是,我们直接从运行正常的Web服务器上撕下了文件。第一个错误让我相信这是由于php或apache版本与我在其他地方读到的不同(工作Web服务器是7.1.10,测试Web服务器是7.2.10,我无法确定Web服务器运行的apache版本)

我不确定这两个错误是否有关联,我仍在适应这种环境,因此在获取这些信息方面进展缓慢


任何帮助都将不胜感激。

后一个错误是由导致前一个错误的问题引起的,前一个错误应该是自解释的,名称
对象
是保留的,不能再用作类名

Object
在PHP
7.2
中成为一个硬保留名称,在PHP
7.0
中是软保留名称。要获得正确的PHP
7.2
兼容性,请将您的CakePHP依赖项升级到至少最新的
2.10.x
版本

如果您使用的是内置加密,您还必须切换到OpenSSL(请参阅
安全性。使用OpenSSL
配置选项),或者如果您的应用程序使用的加密不兼容,请通过PECL安装Mcrypt,或者使用类似polyfill的配置

如果此时无法升级CakePHP,则必须将PHP安装降级为
7.1.x
或更早版本

另见


后一个错误是由导致前一个错误的问题引起的,前一个错误应该是自解释的,名称
对象
是保留的,不能再用作类名

Object
在PHP
7.2
中成为一个硬保留名称,在PHP
7.0
中是软保留名称。要获得正确的PHP
7.2
兼容性,请将您的CakePHP依赖项升级到至少最新的
2.10.x
版本

如果您使用的是内置加密,您还必须切换到OpenSSL(请参阅
安全性。使用OpenSSL
配置选项),或者如果您的应用程序使用的加密不兼容,请通过PECL安装Mcrypt,或者使用类似polyfill的配置

如果此时无法升级CakePHP,则必须将PHP安装降级为
7.1.x
或更早版本

另见


作为错误状态
对象
为保留关键字。你不能在课堂上使用它。您必须为您的类使用其他名称。只需将您的类名更改为其他名称即可解决此错误。由于php版本错误,我遇到了第一个错误。第二个,还没有。因为错误说明
对象
是保留关键字。你不能在课堂上使用它。您必须为您的类使用其他名称。只需将您的类名更改为其他名称即可解决此错误。由于php版本错误,我遇到了第一个错误。第二个,还没有。谢谢!降低PHP版本的级别很有吸引力,事实证明运行web服务器的PHP版本与apache使用的版本(5.6.something)不同,所以一旦我们恢复到这个版本,一切都很好!谢谢降低PHP版本的级别很有吸引力,事实证明运行web服务器的PHP版本与apache使用的版本(5.6.something)不同,所以一旦我们恢复到这个版本,一切都很好!