【发布时间】:2023-03-24 16:08:01
【问题描述】:
我将我的 Concrete 5.7 网站从 php 5.6.x 升级到 7.0.4 并收到以下错误
{"error":{"type":"Whoops\\Exception\\ErrorException","message":"Cannot use 'Null' as class name as it is reserved","file":"\/usr\/share\/nginx\/html\/concrete\/vendor\/zendframework\/zend-queue\/library\/ZendQueue\/Adapter\/Null.php","line":24,"trace":[{"file":"\/usr\/share\/nginx\/html\/concrete\/vendor\/zendframework\/zend-queue\/library\/ZendQueue\/Adapter\/Null.php","line":24,"function":null,"class":null,"args":[]}]},"errors":["Cannot use 'Null' as class name as it is reserved"]}
触发 this 的函数本身就是一个具体的 5 函数。
我能做些什么来解决这个问题?
PHP 7.0.12-1+deb.sury.org~trusty+1 (cli) ( NTS ) 版权所有 (c) 1997-2016 PHP 集团 Zend Engine v3.0.0,版权所有 (c) 1998-2016 Zend Technologies 使用 Zend OPcache v7.0.12-1+deb.sury.org~trusty+1,版权所有 (c) 1999-2016,由 Zend Technologies 提供
【问题讨论】:
-
重命名类。
-
这就是为什么在编写代码时应该使用合适的 IDE。它会告诉您 Null 是 PHP 中的保留字。它与 Concrete 5 无关。
-
@MagnusEriksson Eriksson 导致此错误的内容位于 Concrete5 基本文件夹中,我没有在那里更改任何内容。如果它是我的课程,我会像 Dagon 所说的那样重命名它“文件”:“\/usr\/share\/nginx\/html\/concrete\/vendor\/zendframework\/zend-queue\/library\/ ZendQueue\/Adapter\/Null.php"
-
@CD001 - Yepp... 这是一个已知的兼容性问题:github.com/zendframework/ZendQueue/issues/25
-
@MagnusEriksson - 嘿,你会认为 Zend(PHP 人)会知道他们在做什么......他们一定有一个想法命名一个类
Null可能是个坏事想法。
标签: php zend-framework concrete5