하루 이상 동안 CakePHP 3 프로젝트를 시작하려고했습니다. 작곡가 설치 명령을 실행하면 다음 오류가 발생합니다.PHP intl 확장 기능이 설치되어 있지만 CakePHP 설치에 누락되었다고 표시됩니다.
cakephp/cakephp 3.3.x requires ext-intl * -> the requested PHP extension intl is missing from your system.
MacOS Sierra 10.12.2를 사용하고 있습니다. XCode와 모든 재즈는 완전히 최신입니다. MAMP Pro 4.0.1 (3985)을 통해 PHP 5.6.25를 실행하고 있습니다. 그리고 Bash 대신 ZSH를 사용하는 터미널을 통해 CakePHP 3.3.x를 설치하려고합니다.
intl을 설치하는 동안 꽤 오래 동안 노력했습니다. 그리고 지금 나는 그것이 실제로 설치되어 있는지 꽤 확신 : 나는 php -m
을 실행하면
- 내가 PHP 모듈의 목록에
intl
를 참조하십시오. /Applications/MAMP/bin/php/php5.6.25/conf/php.ini
에있는 내 php.ini에extension=intl.so
이 있습니다.- 파일
intl.so
은/Applications/MAMP/bin/php/php5.6.25/lib/php/extensions/no-debug-non-zts-20131226
디렉토리에 있습니다. - MAMP의 phpinfo 페이지에서 명령 구성 셀에
'--enable-intl'
이 있습니다. 페이지 아래쪽에는 자체 표가있어서 버전 1.1.0에서 국제화가 지원됨을 보여줍니다. 그러나이 표에서 행intl.default_locale
의 값은no value
입니다. 이게 내 문제일까요? - 내
~/.zshrc
파일에 나는 올바른 버전과 PHP 설치를 사용하고 있음을 확신하기 위해alias php="/Applications/MAMP/bin/php/php5.6.25/bin/php"
파일이 있습니다.
나는 많은 기사와 StackOverflow 답변을 사용하여이 작업을 시도하여 아무것도 망가 뜨리지 않았 으면합니다. 비슷한 숫자의 질문이 여기에 있다는 것을 알고 있습니다 만, 지금까지 나는 어떤 대답도 얻지 못했습니다.
- 는 내가 정말 제대로 설치
intl
확장을 제안하기에 충분 위에 나열된 증거인가, 왜 CakePHP는 여전히 확장 것에 대해 불평 않습니다그래서 나는 내 두 가지 질문을 여기에 가정이다 올바르게 설치 되었습니까?
- 제대로 설치되지 않았다면 어떻게 수정하고 CakePHP를 설치해야합니까?
고맙습니다!
페이지에서'phpinfo()'를 실행하십시오. intl이 설치되어 있는지 확인하십시오. Mac은 아파치와 함께 제공되므로 커맨드 라인이 사용하는 PHP와는 다른 버전 일 가능성이 있습니다 – Farkie
예, 아파치가 확장 기능을 실행하는지 확인해야합니다. 또한 아파치가 가리키는 지점을 확인해야합니다 설치 한 PHP의 MAMP 버전 또는 기본 PHP 설치를 나타내는 경우. – Jravict
Mac에서는 apache httpd.conf 파일에서 다음 줄을 찾습니다. #LoadModule php5_module libexec/apache2/libphp5.so이 줄이 MAMP php를 가리키는 지 확인하십시오. Httpd.conf는 /etc/apache2/httpd.conf에 있습니다. 파일을 열면 찾고있는 줄이 LoadModule 섹션의 맨 아래에 있어야합니다. – Jravict