Drupal 8 - Коммерческий модуль - расширение BC математика PHP не найдено

Я пытаюсь установить коммерческий модуль в Drupal 8, однако я получаю сообщение об ошибке "BC math PHP extension not found".

Я искал эту проблему и пробовал разные вещи, такие как редактирование PHP.ini, добавив 'bcmath.scale=2', однако я все еще получаю сообщение об ошибке.

Любая помощь будет оценена, спасибо.

3 ответа

Решение

Это сообщение об ошибке, скорее всего, означает, что ваш PHP не был построен с bcmath служба поддержки. bcmath расширение обычно не предоставляется как расширение плагина, но встроено в PHP, когда оно компилируется с использованием --enable-bcmath вариант. Вот ссылка на соответствующую документацию по установке bcmath (в основном говорится, что вы должны настроить его при компиляции).

Чтобы проверить свой PHP, запустите phpinfo(); на тестовой странице и искать bcmath, Вы также можете сделать это с помощью интерфейса командной строки (в случае, если ваш веб-сервер и интерфейс командной строки находятся в одной сборке) с помощью такой команды

$ php -i | grep -i bcmath

Вы должны увидеть строку вывода, похожую на BCMath support => enabled или если вы просматриваете HTML-результат из PHP вашего веб-сервера в окне с надписью bcmath включен.

К сожалению, похоже, что единственный способ установить bcmath это перестроить PHP, чтобы иметь такую ​​поддержку, или установить готовую версию, которая делает. Я не знаком с вашей настройкой, поэтому я не могу больше строить догадки.

Просто установите плагин bcmath для вашей версии php без необходимости (пере) сборки php, как указано в принятом ответе

# get php version
php -v

# install bcmath based on your version lets assume php 7.1
# for ubuntu
sudo apt install php7.1-bcmath
# for centos 
yum install bcmath

# restart apache 
sudo systemctl restart apache2

Вышеупомянутая проблема появляется при установке коммерции или коммерческого кикстарта с использованием композитора

Добавить расширение BC MATH для PHP 7.2

Если вы получаете эту (https://prnt.sc/sehmd5) ошибку, запустите команду ниже, используя vagrant ssh

Запустите эту команду в корне vagrant ssh

  1. sudo add-apt-репозиторий ppa:ondrej / php
  2. sudo apt update
  3. sudo apt установить php7.2-bcmath
  4. перезапуск службы apache2
  5. Затем откройте php.ini и найдите bcmath
  6. Если масштаб bcmath равен 0, измените его на 2
  7. Перезагрузите php
  8. Перезагрузите Apache
  9. Сайт с аппаратной перезагрузкой
  10. Установите необходимые модули

Точно так же для любой версии PHP вам нужно только изменить версию PHP в третьей команде.

Другие вопросы по тегам