Что произошло
На строке 119:
$file['config'] = './datas/config.php';PHP пытается сделать $file['config'] = ...,
но переменная $file в этот момент — строка, а не массив.
В PHP 8+ это строгое TypeError (в PHP 7 было только Warning).
Почему так случилось
Скорее всего, где-то раньше в коде (в подключенных файлах: functions.php, config.php/config-sample.php, CotDB или Cot::init()) переменная $file была перезаписана строкой.
Как быстро исправить
Самое простое и рабочее решение — добавить принудительную инициализацию массива перед строкой 119:
// НАЧАЛО: указываем принудительно что переменная $file есть массив
if (!is_array($file)) {
$file = [];
}
// КОНЕЦ: указываем принудительно
// больше никаких правок
$file['config'] = './datas/config.php';
$file['config_sample'] = './datas/config-sample.php';
$file['sql'] = './setup/install.sql';