Да, есть такая история, и к сожалению разработчики bx не особо стремятся к ее решению, точнее исправлению раздела "Проверка системы".
В целом, то что пишет СУС при проверке кодировки БД utf8mb4 (utf8mb3), ничего страшного нет, т.к. начиная с версии mySQL8, обозначение utf8 является устаревшим и не рекомендуется к использованию. Они начинают приучать всех писать не просто utf8, а с конкретным указанием байт, по умолчанию по прежнему используется 3-х байтовая.
Лично я, после каждого обновления просто правлю файл bitrix/modules/main/classes/general/site_checker.php чтобы данный момент не мозолил глаза в "Проверке системы", т.к. я уже более года живу в 4-х байтовой (utf8mb4). Правится в 3-х местах, строка 2111:
Понятное дело, не призываю к данному действу
Что-то править в ядре - это зло...
В целом, то что пишет СУС при проверке кодировки БД utf8mb4 (utf8mb3), ничего страшного нет, т.к. начиная с версии mySQL8, обозначение utf8 является устаревшим и не рекомендуется к использованию. Они начинают приучать всех писать не просто utf8, а с конкретным указанием байт, по умолчанию по прежнему используется 3-х байтовая.
Лично я, после каждого обновления просто правлю файл bitrix/modules/main/classes/general/site_checker.php чтобы данный момент не мозолил глаза в "Проверке системы", т.к. я уже более года живу в 4-х байтовой (utf8mb4). Правится в 3-х местах, строка 2111:
| Код |
|---|
if (defined('BX_UTF') && BX_UTF === true)
{
if ($character_set_connection != 'utf8mb4')
$strError = GetMessage("SC_CONNECTION_CHARSET_WRONG", array('#VAL#' => 'utf8', '#VAL1#' => $character_set_connection));
elseif ($collation_connection != 'utf8mb4_unicode_ci')
$strError = GetMessage("SC_CONNECTION_COLLATION_WRONG_UTF", array('#VAL#' => $collation_connection));
}
else
{
if ($bAllIn1251 && $character_set_connection != 'cp1251')
$strError = GetMessage("SC_CONNECTION_CHARSET_WRONG", array('#VAL#' => 'cp1251', '#VAL1#' => $character_set_connection));
elseif ($character_set_connection == 'utf8mb4')
$strError = GetMessage("SC_CONNECTION_CHARSET_WRONG_NOT_UTF", array('#VAL#' => $character_set_connection));
}
|
Что-то править в ядре - это зло...