Предупреждение PHP: модуль уже загружен в Unknown в строке 0

На Mac OSX Mavericks с использованием homebrew php55 всякий раз, когда я запускаю команду aa php, я получаю следующее сообщение об ошибке (все работает нормально, это просто раздражает)

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

Я побежал

 php --ini 

и выход был

 php --ini PHP Warning: Module 'intl' already loaded in Unknown on line 0 Warning: Module 'intl' already loaded in Unknown on line 0 Configuration File (php.ini) Path: /usr/local/etc/php/5.5 Loaded Configuration File: /usr/local/etc/php/5.5/php.ini Scan for additional .ini files in: /usr/local/etc/php/5.5/conf.d Additional .ini files parsed: /usr/local/etc/php/5.5/conf.d/ext-apcu.ini, /usr/local/etc/php/5.5/conf.d/ext-igbinary.ini, /usr/local/etc/php/5.5/conf.d/ext-intl.ini, /usr/local/etc/php/5.5/conf.d/ext-memcached.ini, /usr/local/etc/php/5.5/conf.d/ext-mongo.ini, /usr/local/etc/php/5.5/conf.d/ext-uuid.ini, /usr/local/etc/php/5.5/conf.d/ext-xdebug.ini 

Проверяется в файле php.ini и загружается только одно место, в котором находится intl, и оно закомментировано. Другое содержимое файлов выглядит примерно так:

 extension="/usr/local/Cellar/php55/5.5.23/lib/php/extensions/no-debug-non-zts-20121212/intl.so" 

где содержимое после последней косой черты является расширением.

Я не знаю, где еще искать.

Любая помощь приветствуется

Я думаю, что вы загрузили xdebug, вероятно, дважды в php.ini.

  1. проверьте php.ini , что у вас нет xdebug.so для значений extension= и zend_extension= .

  2. Также проверьте /etc/php5/apache2 и /etc/php5/cli/ . Вы не должны загружать в каждый php.ini в этих каталогах расширение xdebug.so . Только один php.ini должен загрузить его.

У меня была такая же проблема на mac ie 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" . Прокомментируйте это, добавив в начало строки ;extension="/usr/local/opt/php70-pdo-pgsql/pdo_pgsql.so" .
  • Сохраните файл. (Я обычно управляю контролем + O , control + M ).
  • Выйдите из файла ( control + X ).

Надеюсь, это поможет кому-то.

У вас должен быть каталог /etc/php2/conf.d (по крайней мере, на Ubuntu I do), содержащий кучу .ini-файлов, которые все загружаются при запуске php. Эти файлы могут содержать повторяющиеся настройки, которые конфликтуют с настройками в php.ini . В моей установке PHP я замечаю файл conf.d/20-intl.ini с настройкой extension=intl.so Держу пари, это ваш конфликт.

В файле php.ini есть 2 файла php_intl.dll на 872 и 968 числовых строках. если php warning module 'intl' уже загружен в неизвестном в строке 0, это сообщение сосредоточено на вашей CLI. Тогда вам нужно будет удалить префиксы semiclone в строке 872. Я ожидаю, что это будет сделано …..

У меня была такая же проблема после обновления с Fedora Server 24 (PHP 5) до 25 (PHP 7) . После исследования я обнаружил, что /etc/php.d/ имеет два разных файла .ini загружающих extension=geoip.so .

У предыдущей версии дистрибутивов был этот файл с именем 50-geoip.ini но последнее было изменено на 40-geoip.ini , и я подозреваю, что в процессе обновления версии старый не был удален, а новый был создан ,

Это был фактический случай проблемы. После удаления блуждающего 50-geoip.ini из /etc/php.d/ и перезапуска httpd он просто работал безупречно.

Чтобы устранить эту проблему, вы должны отредактировать файл php.ini (или extensions.ini) и закомментировать расширения, которые уже скомпилированы. Например, после редактирования ваш ini-файл может выглядеть следующим образом:

 ;extension=pcre.so ;extension=spl.so 

Источник: http://www.somacon.com/p520.php

Я удалил файл 20-mongo.ini в /etc/php5/cli/conf.d, и это решило проблему.