Symfony2中的系统(SonatAdminBundle)中缺少请求的PHP扩展名intl
我尝试安装沙盒,但从composer获得以下错误: 正在加载包含程序包信息的composer存储库 无法将您的需求解析为锁定文件中的依赖项 一套可安装的软件包 问题1Symfony2中的系统(SonatAdminBundle)中缺少请求的PHP扩展名intl,php,symfony,intl,Php,Symfony,Intl,我尝试安装沙盒,但从composer获得以下错误: 正在加载包含程序包信息的composer存储库 无法将您的需求解析为锁定文件中的依赖项 一套可安装的软件包 问题1 - Installation request for sonata-project/intl-bundle 2.1.0 -> satisfiable by sonata-project/intl-bundle 2.1.0.` - sonata-project/intl-bundle 2.1.0 requires ext-i
- Installation request for sonata-project/intl-bundle 2.1.0 -> satisfiable by sonata-project/intl-bundle 2.1.0.`
- sonata-project/intl-bundle 2.1.0 requires ext-intl * -> the requested PHP extension intl is missing from your system.`
问题2
- sonata-project/intl-bundle 2.1.0 requires ext-intl * -> the requested PHP extension intl is missing from your system.`
- sonata-project/news-bundle 2.1.x-dev requires sonata-project/intl-bundle 2.1.* -> satisfiable by sonata-project/intl-bundle 2.1.0.
- Installation request for sonata-project/news-bundle 2.1.
正如错误所说,您需要在php中启用intl扩展。 在php.ini文件中,取消注释行
extension=ext/php\u intl.dll
或类似的内容
编辑:请注意,如果您使用的是wamp或类似的东西,您应该知道,wamp配置中的php.ini文件不一定是composer使用的文件。像@Hugehornet指出的那样-您应该在php.ini中启用此扩展,方法是取消注释这一行:
extension=ext/php\u intl.dll
如果使用wamp接口执行此任务,则实际上是在更新apache目录中的php.ini文件
示例:C:\wamp\bin\apache\Apache2.4.4\bin\php.ini
Composer正在使用位于php安装目录中的
示例:C:\wamp\bin\php\php5.4.12\php.ini
您应该手动编辑后者并重新启动wamp服务器。首先确保您的服务器是isung x86版本(intl不使用x64),然后:
- 直接在
中激活intl扩展php.ini
- 将所有
从php目录复制到apache目录icu*.dll
- 确保您的控制台使用与刚才配置的相同的php文件夹
php.ini
文件:
C:\wamp\bin\php\phpx.y.z
C:\wamp\bin\apache\Apachex.y.z\bin
我不知道哪一个在你的道路上。只需确保在这两个版本中都添加了扩展,以消除任何疑问。Linux用户
yum install php-intl
我使用的是Mac OS X Yosemite,我修复了这个错误 您的系统中缺少请求的PHP扩展mcrypt 通过运行以下命令:
brew update
brew upgrade
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
brew install php54-mcrypt
我在安装新的Magento 2.0时遇到了同样的问题,经过不同的尝试和尝试后,我通过以下步骤设法解决了这个问题: 我将所有的icu*文件从php目录复制到Appache目录,结果成功了 Php目录: WAMP\bin\php\php5.5.12 Appache目录: WAMP\bin\apache\apache2.4.9 确保在php.ini文件中取消注释以下行: extension=ext/php\u intl.dll
如果intl已经启用,但无法工作,请在Path环境变量中添加PHP目录,然后重新启动服务器。 (例如,wamp的C:\Program Files\wamp\bin\php\phpX.XXX.XXX)
这对我有用 在Ubuntu、Debian和相关Linux发行版上
sudo apt-get install php-intl
安装默认PHP版本的扩展。
对于其他版本,如
apt get install php7.3-intl
,如果提供的版本正确,将选择正确的扩展。Hi,您的php.ini中是否有u active intl?在Linux上:安装了php5 intl?是的,我在php中激活了intl。是的,我正在使用WAMP,&通过在php.ini中取消对extension=ext/php_intl.dll的注释,已经启用了extension=ext/php_intl.dll的intl扩展,但仍然会出现错误您有什么wamp?WampServer?uWamp?看看这个,看看它是否解决了你的问题:Ubuntu:sudo-apt-get-install php5-intl
homebrew:brew-install php55-intl
在Ubuntu 16.04上使用sudo-apt-install-php-intlUbuntu:sudo-apt-get-install php5.6-intl
这不是很准确,如果你的回购协议有PHP7.4,比如你有7.2,它将安装PHP7.4-intl,更不用说不是每个人都在运行一个有apt甚至linux的系统。你在Mac OS X Yosemite上使用Xampp或WAMPP吗