Перехожу на PHP 8 и сразу получаю ошибку:
Only the first byte will be assigned to the string offset, на строку:
$sets[strlen($sets) - 2] = ' ';
Чтобы исправить ошибку, заменяю строку на:
$sets = substr_replace($sets, ' ', -2, 1);
Готово. Ошибка исправлена.