标准设置后切换到PHP 7 Bitrix 15版本时,弹出错误:
致命错误:未捕获的类型错误:传递给 Bitrix\Main\Diag\ExceptionHandler::handleException() 的参数 1 必须是异常的实例,错误的实例在 bitrix/modules/main/lib/diag/exceptionhandler.php:167 堆栈中给出trace: #0 [internal function]: Bitrix\Main\Diag\ExceptionHandler->handleException(Object(Error)) #1 {main} 在第 167 行的 bitrix/modules/main/lib/diag/exceptionhandler.php 中抛出
如何过渡和纠正错误?
必须通过将产品更新到版本 16.5 及更高版本来执行转换http://www.intervolga.ru/blog/support/1c-bitrix-with-php-7/
描述没有意义。Bitrix 有很多行代码,其中很多是很久以前写的。并且使用了函数,PHP7 中不允许的小东西。PHP7 中有许多重大变化。这需要额外的工作来确保 Bitrix 和 PHP 7 之间的兼容性。正如他们在第一个答案中所说:要切换到 PHP7,您需要至少升级到 16.5,对于 7.0,如果您想要 PHP 7.1,则需要使用它到当前版本。
如果没有办法升级,我建议继续使用 PHP 5.6。或者自己解决一个又一个错误。
此外,您应该注意第三方解决方案和模块(以及您网站的开发人员具体执行的代码),也可能有不适合 PHP7 的代码。
建议不依赖于 Bitrix。它们是从 5.x 到 7.x 的过渡过程的标准