TYPO3 Bootstrap Package错误:ContainerContextProcessor $pid必须是i



我正在开发一个TYPO3网站本地与ddev和一切都很好。当我将更改推送到实时服务器时,我得到了这个错误消息。

BK2KBootstrapPackageDataProcessingContainerContextProcessor::getPageRecords(): Argument #2 ($pid) must be of type int, string given, called in /var/home/derkreiger_at/amitex/releases/6/public/typo3conf/ext/bootstrap_package/Classes/DataProcessing/ContainerContextProcessor.php on line 37

如果我停用所有的内容元素,一切都是"工作"。嗯,除了nav&显示页脚,但也没有错误信息。

如果我在文件中手动将pid转换为int,页面显示正常。但是我为什么要修改这个文件呢?在本地一切都行得通。我真的不明白。我还尝试通过print_r和echo在本地调试pid,但没有显示任何内容。在服务器端,print_r和echo正在工作。

我真的很感激任何帮助!如果需要更多的信息,我一定会贴出来的。我对stackoverflow有点陌生,所以如果不是所有的信息都给出了,我很抱歉。

谢谢,Myli

编辑:我只是看到我有pid字符串的问题,以及其他地方

FriendsOfTYPO3TtAddressHooksTcaLabel::getConfiguration(): Argument #1 ($pid) must be of type int, string given, called in /var/home/derkreiger_at/amitex/releases/6/public/typo3conf/ext/tt_address/Classes/Hooks/Tca/Label.php

也许你的数据库是MySQL严格模式而不是本地模式

我解决了这个问题。我切换回mysqli而不是pdo_mysqli。我得到了另一个错误,一些php mysqli常数找不到。这是由于我非常具体的托管提供商(domaintechnik)不支持TYPO3与php 8.1。所以我把php版本切换回8.0,一切正常。希望对大家有所帮助。

最新更新