Php fatal error string functions are overloaded by mbstring in

Php fatal error string functions are overloaded by mbstring in

  • Вы здесь:
  • Главная
  • CMS
  • Joomla
  • Решение проблем с Joomla
  • Устранение ошибки: Fatal error: String functions are overloaded by mbstring в Joomla

Устранение ошибки: Fatal error: String functions are overloaded by mbstring в Joomla

Информация о материале Автор: WhiskeyMan Опубликовано: 31 мая 2015 Создано: 31 мая 2015 Обновлено: 20 ноября 2015 Просмотров: 20319

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда активна

При попытке установить Joomla (или на рабочем сайте после изменения настроек PHP) вы можете встретить ошибку: Fatal error: String functions are overloaded by mbstring in /путь/к/сайту/libraries/vendor/joomla/string/src/phputf8/utf8.php on line 39. Конечно, все эти Fatal error наводят жути, но не стоит их так бояться. Для устранения этой ошибки нужно:

  1. Открыть php.ini (в ubuntu он может лежать в /etc/php5/apache2/php.ini).
  2. Найти в нем параметр mbstring.func_overload и установить его значение равное нулю (mbstring.func_overload=0). В последних версиях PHP нельзя выставить параметры модуля mbstring в .htaccess.
  3. Перезагрузить web-сервер, в случае с apache под ubuntu это делается командой sudo service apache2 restart, ну или можно sudo /etc/init.d/apache2 restart.

Если у вас PHP установлен как модуль для apache, то для конкретного виртуального хоста можно менять настройки, используя конструкцию:

 
php_value default_charset utf8
php_admin_value mbstring.func_overload 2
php_value mbstring.internal_encoding utf8
php_admin_value realpath_cache_size "4096k"

Еще можно просто удалить этот кусок кода в файле utf8.php:

if ( extension_loaded('mbstring')) < if ( ini_get('mbstring.func_overload') & MB_OVERLOAD_STRING ) < trigger_error('String functions are overloaded by mbstring',E_USER_ERROR); >mb_internal_encoding('UTF-8'); > 

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

Читайте также:  Play audio with java

У вас недостаточно прав для того чтобы тут гадить.

Источник

[Решено] Fatal error: String functions are overloaded by mbstring in D:\Users\vho_dya2015_959\vho_dy — Joomla 3.x: Общие вопросы

Контент-плагин Joomla, позволяющий вставлять информацию из материалов и пользовательских полей материала в любом месте, где работают контент-плагины с помощью шорт-кода вида .Для плагина возможно (и даже необходимо) создавать свои макеты вывода, которые Вы указываете в шорт-коде.

Joomla 5: плагин обратной совместимости

Как известно, из кода Joomla постепенно исчезают устаревшие классы API. Многие из них «продержались» в ядре со времён Joomla 1.5. Отказ от них — это эволюция. Однако, удаление устаревших классов и методов будет вызывать ошибки в расширениях, которые разработчики вовремя не обновили.

Перенос материалов из компонента K2 в стандартный компонент материалов Joomla

K2 — в целом неплохой компонент (был). Некоторое время он давал гораздо больше возможностей для отображения контента, чем стандартный компонент материалов Joomla. Однако, время не стоит на месте, и сейчас стандартный компонент не уступает в возможностях компоненту K2. Разработчики Joomla потрудились на славу, чего не скажешь о разработчиках компонента K2. Мало того, что долгое время не обновлялся функционал компонента, так они не подготовили обновление для перехода на 4 версию Joomla. На момент написания этой статьи прошло почти два года с выпуска Joomla 4, а обновления компонента K2 для совместимости с новой версией так и нет. Возможно, на тот момент, когда вы будете читать эти строки разработчики K2 что-то выкатят, но сейчас нет.

Источник

Установка Joomla 3.4.1 на локальный openserver

proverka-joomla-280x300

Возникла у меня необходимость установить и проверить ряд моментов у новой Joomla 3.4.1. Для размещения традиционно выбрал локальный openserver. В целом у меня не возникало проблем с установкой распространенных cms, но не в этот раз. Первой выскочила ошибка:

Fatal error: String functions are overloaded by mbstring in D:OpenServerdomainsjoomlalibrariesvendorjoomlastringsrcphputf8utf8.php on line 39

Пошел посмотреть код ошибки, т.е. строки 39:

Так как я при установке использую кодировку UTF-8, соответственно в файле настроек РНР стоят нужные настройки и одна из них не нравится joomla, а именно:

mbstring.func_overload = 2 и выше не подходят, должно быть значение 0

Казалось бы все, дальше все пойдет как по маслу, но не тут то было. Далее выскочил следующий баг:

В итоге пришлось создать файл .htaccess в котором прописать:

php_flag magic_quotes_gpc Off

Ещё статьи:

12.05.2023 Битрикс убрал тип поля «Привязка к карте Яндекс»
В новых обновлениях Битрикс убрал тип поля «Привязка к карте Яндекс». ID: 455

18.01.2023 Нюансы перехода битрикс на РНР 8.0
С февраля битрикс прекращает поддерживать РНР 7.4 и в битрикс сегменте сайтов начался переход на РНР 8 для получения обновлений.
Но без нюансов и ошибок. ID: 431

10.01.2023 БУС окончательно всё?
Появилась информация от битрикс, что грубо говоря поддержка по отраслевому медицинскому решению от битрикс будет до 1 февраля 2024 года, а что потом б. ID: 426

Новые статьи в блоге:

29.06.2023 Почему DNS есть, но ошибка «Не удалось получить записи с DNS серверов»
Проверка на VPS показывает, что DNS есть, но по факту ошибка «Не удалось получить записи с DNS серверов» ID: 461

29.06.2023 Почему отсутствуют для загрузки новые версии PHP
На одном VDS возникла ситуация, отсутствуют для загрузки новые версии РНР ID: 460

11.06.2023 Проблема кеширования битрикс меню подразделов
В новой версии обновления битрикс вылезла проблема с кешем меню выпадающих пунктов раздела (меню вида .тип_меню.menu_ext.php). При переходе по. ID: 459

Источник

String functions are overloaded by mbstring

Код ответа сервера при обращении к сайту удобно проверять при помощи curl, когда в браузер выводится ошибка String functions are overloaded by mbstring (она характерна в основном для сайтов на CMS Joomla) код ответа сервера будет 500

* Rebuilt URL to: example.com/
* Trying 123.123.123.123…
* Connected to example.com (123.123.123.123) port 80 (#0)
> GET / HTTP/1.1
> Host: example.com
> User-Agent: curl/7.47.0
> Accept: */*
>
< HTTP/1.1 500 Internal Server Error

В php-error.log или в лог ошибок веб-сервера при этом будут записываться сообщения аналогичного содержания:

[08-Sep-2017 11:39:04 UTC] PHP Fatal error: String functions are overloaded by mbstring in /home/web/sites/example.com/libraries/phputf8/utf8.php on line 39

Причина таких ошибок в том, что в файле php.ini содержится параметр mbstring.func_overload=2, для корректной работы сайтов на CMS Joomla же требуется значение 0.

Как исправить ошибку String functions are overloaded by mbstring

mbstring.func_overload=2 необходим для сайтов на CMS Битрикс. Директива нужна для нормального отображения кодировки. Если на одном сервере размещаются сайты и на Joomla и на Битрикс, и отказаться от данной директивы сохранив работоспособность сайтов нельзя — можно настроить 2 версии РНР на сервере указав для каждой из них разные значения mbstring.func_overload

php.ini может быть идентичным за исключением директивы о которой идет речь, для Битрикс она будет выглядеть как:

mbstring.func_overload=2
mbstring.internal_encoding=utf-8

mbstring.func_overload=0

Читайте про то как проверить актуальные настройки PHP с помощью скрипта phpinfo.

Для расширения mbstring в выводе скрипта будет отдельный блок (если расширение подключено). В блоке указаны текущие значения параметров.

Пример представлен на скриншоте:

String functions are overloaded by mbstring

Чтобы поменять значения нужно найти в выводе phpinfo подключаемые файлы php.ini, внести изменения там и перезапустить веб-сервер. Им чаще всего является Apache (в связке Nginx + Apache) или сервис приложений php-fpm.

Об этом также можно судить по выводу phpinfo, в верхней части выводится режим работы РНР. Это может быть Apache Handler, cgi, fastcgi, php-fpm. Последний говорит о том, что скрипты обрабатывает сервис php-fpm, остальные говорят о том, что используется Apache.

Источник

Оцените статью