我的Wiki上的每个页面都出现以下错误。通常,我会禁用错误显示,但由于我仍在开发网站,我不想这样做,我宁愿修复错误。
警告:array_merge_recursive():参数#1不是数组 第294行/var/www/html/includes/registration/ExtensionProcessor.php
我正在运行最新版本的 MW - 1.25.1 并安装了以下扩展程序:
我该如何解决这个问题?我不知道从哪里开始排除故障。
答案 0 :(得分:1)
您已经遇到this bug:"在extension.json中设置非数组属性会导致无用的错误消息"
虽然错误消息无效,但解决方法是在extension.json中找到有问题的项目
答案 1 :(得分:1)
找到问题的一些相关原因。
如果在LocalSettings.php
中加载了5个以上的皮肤,则数组将失败例如,如果您已指定:
wfLoadSkin( 'CologneBlue' );
wfLoadSkin( 'Modern' );
wfLoadSkin( 'MonoBook' );
wfLoadSkin( 'Vector' );
wfLoadSkin( 'Gamepress' );
然后你不会收到错误信息,但是你添加了第6个或更多皮肤,然后你会看到错误信息
wfLoadSkin( 'CologneBlue' );
wfLoadSkin( 'Modern' );
wfLoadSkin( 'MonoBook' );
wfLoadSkin( 'Vector' );
wfLoadSkin( 'Gamepress' );
wfLoadSkin( 'Bouquet' );
wfLoadSkin( 'DuskToDawn' );
wfLoadSkin( 'WPtouch' );
wfLoadSkin( 'Dusk' );
此外,当与其他皮肤(如
)一起加载时,某些皮肤仍会导致问题wfLoadSkin( 'WPtouch' );
wfLoadSkin( 'Dusk' );
当自己加载时工作正常,但错误仍然显示,同时包含默认皮肤和Gamepress或Bouquet。
如果你想为手机和PC使用不同的皮肤,那么目前它是混合搭配。
答案 2 :(得分:1)
对我来说,在我加载HitCounter和TopTenPages后出现了错误,但我相信只要你在Mediawiki 1.25.1中使用wfLoadExtension钩子加载2个或更多扩展名就会发生错误。
我能够通过在mediawiki / includes / registration / ExtensionProcessor.php中的第83行('manifest_version',
)之后添加'AutoloadClasses',
来修复此错误。
这是基于change 218787。