Array to string conversion

В версии 17 и некоторых более ранних при включенном в config.ini выводе ошибок появляется множество предупреждений и преобразовании массива в строку в def_module.php:

В версии 17 и некоторых более ранних при включенном в config.ini выводе ошибок появляется множество предупреждений и преобразовании массива в строку в def_module.php:

Array to string conversion on def_module in line 1044

Этого мало кто замечает ,потому что полный вывод ошибок обычно выключен (похоже, у самих юмисофтов тоже, хотя мне это не кажется правильным). Проблема в том, что иногда при отладке приходится включать вывод всех ошибок и это бессмысленное предупреждение затрудняет поиск своих ошибок.

Ошибка возникает на этом участке кода

$res .= is_array($t_res) ? implode('', $t_res) : $t_res;

Дело в том, что $t_res может быть многомерным массивом, на что и жалуется implode. Вывод - преобразовать $t_res в одномерный массив:

if (is_array($t_res)) {                                
    $temp = [];
    
    array_walk_recursive($t_res, function($v) use (&$temp) {
        $temp[] = $v;
    });
    
    $t_res = implode('', $temp);
} 
$res .= $t_res;