1

Тема: NOTICE: PHP message: PHP Notice: Array to string conversion

PHP 5.4.4-14+deb7u3
PunBB последний коммит с гитхаба.

В логах заметил множество нотисов вида:

"NOTICE: PHP message: PHP Notice:  Array to string conversion in /.../admin/extensions.php on line 919"

Причина кроется в array_diff, который теперь кидает нотисы при сравнении многоуровневых массивов.
В данном случае лечится просто:

diff --git a/admin/extensions.php b/admin/extensions.php
index cd80de4..1a12f57 100644
--- a/admin/extensions.php
+++ b/admin/extensions.php
@@ -915,7 +915,7 @@ else
         $update_hour = (isset($forum_ext_versions_update_cache) && (time() - $forum_ext_versions_update_cache > 60 * 60));
 
         // Update last versions if there is no cahe or some extension was added/removed or one day has gone since last update
-        $update_new_versions_cache = !defined('FORUM_EXT_VERSIONS_LOADED') || (isset($forum_ext_last_versions) && array_diff($inst_exts, $forum_ext_last_versions) != array()) || $update_hour || ($update_hour && isset($min_timestamp) && (time() - $min_timestamp > 60*60*24));
+        $update_new_versions_cache = !defined('FORUM_EXT_VERSIONS_LOADED') || (isset($forum_ext_last_versions) && array_diff(array_keys($inst_exts), array_keys($forum_ext_last_versions)) != array()) || $update_hour || ($update_hour && isset($min_timestamp) && (time() - $min_timestamp > 60*60*24));
 
         ($hook = get_hook('aex_before_update_checking')) ? eval($hook) : null;

pull-реквесты делать не умею sad

Поделиться