Подтвердить что ты не робот

PHP удалить/исправить модуль не найден или уже загружен предупреждения?

Когда я запускаю php script из командной строки, как показано ниже

php test.php

я получаю следующий вывод

PHP Warning:  Module 'memcache' already loaded in Unknown on line 0
PHP Warning:  Module 'apc' already loaded in Unknown on line 0

как я могу исправить или удалить эти предупреждения модуля? Я проверил php.ini в

etc/php.ini 

вывод

php -i | grep php.ini
PHP Warning:  Module 'memcache' already loaded in Unknown on line 0
PHP Warning:  Module 'apc' already loaded in Unknown on line 0
Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini

Я не вижу никакой загрузки или ссылки на эти два модуля там...

пожалуйста, помогите

4b9b3361

Ответ 1

Когда вы устанавливаете php5-memcache, он добавляет собственный файл memcache.ini, который уже загружает это расширение. Так что просто удалите/прокомментируйте загрузку расширения с вашего php.ini.

 ;extension=memcache.so

Аналогично APC (альтернативный PHP-кэш-модуль).

 ;extension=apc.so

Ответ 2

У меня была такая же ситуация. В моем случае проблема заключалась в том, что у меня было два файла конфигурации для memcache в /etc/php 5/cli/conf.d/.

php -i | grep memcache.ini

В моем случае результат был:

/etc/php5/cli/conf.d/20-memcache.ini,
/etc/php5/cli/conf.d/memcache.ini

Чтобы избавиться от предупреждения, я удалил строку extension=memcache.so из файла memcache.ini.

Ответ 3

Если вы используете php5.4 (CentOS 6.5),

  • Перейти к /etc/php.d/
  • in memcache.ini прокомментировать расширение

    ;extension=memcache.so
    
  • аналогично в apc.ini

    ;extension=apc.so
    

Ответ 4

Я пришел сюда для поиска решения аналогичной ошибки, т.е. Warning: Module 'pdo_pgsql' already loaded in Unknown on line 0. Посмотрев на различные сайты, вот решение, которое я придумал. Это сработало для меня, надеюсь, что это сработает для кого-то с аналогичной проблемой.

  • Найдите папку conf.d, моя была в каталоге /usr/local/etc/php/7.0/conf.d.
  • В этой папке есть файл, называемый ext-pdo_pgsql.ini.
  • Введите sudo nano ext-pdo_pgsql.ini, чтобы отредактировать его.
  • Должна быть строка extension="/usr/local/opt/php70-pdo-pgsql/pdo_pgsql.so". Комментарий путем добавления полуколонки к началу строки, т.е. ;extension="/usr/local/opt/php70-pdo-pgsql/pdo_pgsql.so".
  • Сохраните файл. (Обычно я запускаю control + O, control + M).
  • Выйдите из файла (control + X).

Ответ 5

Возможно, эти модули перечислены дважды, поэтому вы получаете сообщение об ошибке "Уже загружено". Узнайте, какие файлы конфигурации загружены

php -i | grep 'Loaded Configuration File'
php -i | grep 'ini'

Это скажет вам, какие файлы .ini загружены и проанализированы (дополнительные файлы .ini были разобраны).

Посмотрите на конкретные файлы и закомментируйте второе вхождение (как указано ниже)

;extension=memcache.so
;extension=apc.so

Ответ 6

имеются файлы конфигурационных файлов /etc/php5/mods-available

Откройте файл pdo_mysql.ini и комментарий строка pdo_mysql.so

После службы apache2 | перезапуск php5-fpm в зависимости от того, используете ли вы

Ответ 7

Я получал ту же ошибку,

Module 'sphinx' already loaded

Вам нужно найти модуль (.ini), который загружается более одного раза и удаляет один из них,

[email protected]:~$ grep -R "sphinx" /etc/php5/*

/etc/php5/fpm/conf.d/sphinx.ini:extension=sphinx.so
/etc/php5/fpm/conf.d/20-sphinx.ini:extension=sphinx.so

[email protected]:~$ sudo rm /etc/php5/fpm/conf.d/sphinx.ini

Ответ 8

Если вы не хотите обновлять файл конфигурации, просто добавьте поверх своей страницы или конструктора " error_reporting (0)"