Mac OSX Mavericks에서 homebrew php55를 사용하는 경우 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
설정되지 않은 것xdebug.so
가치관을 위해서extension=
그리고.zend_extension=
.체크도 해 주세요
/etc/php5/apache2
그리고./etc/php5/cli/
. 각각에 로드하지 마십시오.php.ini
이러한 디렉토리에서 확장자는xdebug.so
파일은 1개뿐입니다.php.ini
로딩해야 합니다.주의: 경로 내부에는 문자열이 있습니다.
/etc/php5
5는 PHP 버전입니다.따라서 다른 버전을 사용하면 항상 다른 경로를 사용할 수 있습니다.php7
.
Mac에서도 같은 문제가 발생했습니다. 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을 실행합니다.)
- 파일을 종료합니다(컨트롤 + X).
이게 도움이 됐으면 좋겠네요.
이 문제를 해결하려면 php.ini(또는 extensions.ini) 파일을 편집하고 이미 컴파일된 확장자를 코멘트 아웃해야 합니다.예를 들어, 편집 후 ini 파일이 아래 행과 같이 나타날 수 있습니다.
;extension=pcre.so ;extension=spl.so
출처 : http://www.somacon.com/p520.php
/etc/php2/conf.d 디렉토리(적어도 Ubuntu의 경우)에 php 실행 시 로딩되는 많은 .ini 파일이 포함되어 있어야 합니다.이러한 파일에는 의 설정과 경합하는 중복 설정이 포함될 수 있습니다.php.ini
제 PHP 설치에서 파일을 발견했습니다.conf.d/20-intl.ini
와 함께extension=intl.so
설정.그게 네 갈등일 거야
제 경우, php.ini에서 ;subt=subtu_subtu.so의 입력을 해제했습니다만, Ubuntu는 이미 이 확장자를 다른 곳에서 호출하고 있었습니다.
이 “다른 곳”을 찾으려면 php.ini에서 알립니다.제 경우 /etc/php/7.1/apache2/conf.d/20-curl.ini가 경로였습니다.
여기서 다음 파일(터미널)을 편집합니다.
sudo nano /etc/php/7.1/apache2/conf.d/20-curl.ini
;comments=comments_so.so에 코멘트합니다.
파일을 저장하고 apache를 다시 시작합니다.
sudo systemctl restart apache2