На 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.
проверьте php.ini
, что у вас нет xdebug.so
для значений extension=
и zend_extension=
.
Также проверьте /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"
. Надеюсь, это поможет кому-то.
У вас должен быть каталог /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, и это решило проблему.