Top.Mail.Ru
Ответы

Для чего нужна настройка в php.ini mbstring.func_overload

сейчас стоит mbstring.func_overload = 2 на хостинге есть сайты на битриксе и нужно установить joomla, если поменять настройку на 0 то установка joomla запускается, иначе пустая страница но не помешает ли это bitrix ?

По дате
По рейтингу
Аватар пользователя
Мастер
8лет

bitrix требует для работы mb_string.func_overload = 2, т. к. активно юзает всякие strpos для UTF-8, ибо разрабы битрикса поленились заюзать расширение mbstring.
В старых версиях пыха позволялось менять это значение через .htaccess - возможно, получится
php_value mbstring.func_overload 2

Если нет (что более вероятно), то только если прописывать отдельно для каждой директории с сайтом в виртуалхосте, нечто в духе
<Directory "/path/to/joomla-site">
php_admin_value mbstring.func_overload 0
....
</Directory>

<Directory "/path/to/bitrix-site">
php_admin_value mbstring.func_overload 2
....
</Directory>

Но это, опять же, если есть такая возможность..

Аватар пользователя
Мастер
8лет

Может повлияет, а может и нет. Все зависит от того, использует битрикс mb напрямую или через механизм перегрузки функций. Вот пояснение из php.net:
Для использования механизма перегрузки функций нужно задать настройке mbstring.func_overload в php.ini положительное значение, которое представляет собой комбинацию битовых масок, определяющих категории функций, которые нужно перегружать. Это будет число 1 для перегрузки функции mail(). 2 для строковых функций, 4 для функций регулярных выражений.