Запрошенное расширение PHP intl отсутствует в вашей системе (SonataAdminBundle) в Symfony2
Я пытаюсь установить песочницу, но я получаю следующую ошибку от композитора:
загрузка репозиториев composer с установкой информации о пакете зависимости от файла блокировки ваши требования не могут быть разрешены устанавливаемый набор пакетов.
7 ответов
У меня была та же проблема, когда я устанавливал новый Magento 2.0, после разных хитов и испытаний, я решил решить ее, выполнив следующие шаги:
Я скопировал все icu* файлы из каталога php в каталог Appache, и это сработало.
каталогов на PHP:
WAMP\bin\php\php5.5.12
Каталог Appache:
WAMP\bin\apache\apache2.4.9
обязательно un-comment следующая строка в php.ini-файл:
extension=ext / php_intl.dll файлы
Как указал @Hugehornet - вы должны включить это расширение в php.ini, раскомментировав эту строку: extension=ext / php_intl.dll файлы
Если вы используете интерфейс wamp для этой задачи, вы фактически обновляете php.ini-файл, расположенный в каталоге apache.
Пример: C:\wamp\bin\apache\Apache2.4.4\bin\php.ini
Composer использует тот, который находится в каталоге установки php.
пример: C:\wamp\bin\php\php5.4.12\php.ini
вы должны вручную отредактировать последний и перезапустить сервер wamp.
вам нужно включить расширение intl в php так же, как говорится в ошибке.
В вашем php.ini и раскомментируйте строку extension=ext/php_intl.dll
или что-то вроде этого.
Edit: обратите внимание, что если вы используете wamp или что-то подобное, вы должны знать о том, что php.ini-файл в конфигурации wamp не обязательно используется composer.
прежде всего убедитесь, что ваш сервер isung x86 build (intl не работает с x64), а затем:
- активировать расширение intl в
php.ini
напрямую - скопировать все
icu*.dll
сформировать каталог php в каталог apache - убедитесь, что ваша консоль использует ту же папку php, которую вы только что настроили источник.
в моей системе windows у меня есть два php.ini
файлы на текущих путях:
C:\wamp\bin\php\phpx.y.z
C:\wamp\bin\apache\Apachex.y.z\bin
Я не знаю, что один на твоем пути. Просто не забудьте добавить расширение в обоих из них, чтобы устранить любые сомнения.
Я на Mac OS X Yosemite, и я исправляю эту ошибку
запрошенное расширение PHP mcrypt отсутствует в вашей системе
, выполнив следующие команды :
brew update
brew upgrade
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
brew install php54-mcrypt
Если intl уже включен и не работает, добавьте каталог PHP в переменную среды Path, а затем перезапустите сервер. (например C:\Program файлы\wamp\bin\php\phpX.XXX.XXX для wamp)
Это сработало для меня!