1

我发现了很多关于这个问题的帖子,但我认为我的问题是不同的(尤其是我的环境)。

我使用 Windows 7、Symfony 2.3.6 和 wamp 2.2

我想下载并安装 FOSUserBundle :

php composer.phar update friendsofsymfony/user-bundle

我有一个(显然很常见)错误:

symfony/icu v1.2.0 requires lib-icu >= 4.4
Installation request for symfony/icu == 1.2.0.0 -> satisfiable by symfony icu[v1.2.0]

显然我已经有了 1.2 版的 symfony/icu。

我还是尝试更新它:

php composer.phar update symfony/icu

但它想安装以前的版本(1.0.0)。为什么 ?

所以我保留了 1.2.0

我知道 icu 是随 PHP intl 扩展一起交付的。它开着。

启动 phpinfo 我有这个:

intl

Internationalization support    enabled
version 1.1.0
ICU version 4.6.1
ICU Data version    4.6

Directive   Local Value Master Value
intl.default_locale fr_utf8 fr_utf8
intl.error_level    2   2

所以 4.6 >= 4.4,应该没问题吧?

怎么了 ?

我该如何解决?

注意:我没有更改 composer.json 而是添加我要添加的捆绑包的 require 部分

"require": {
    "php": ">=5.3.3",
    "symfony/symfony": "2.3.*",
    "doctrine/orm": ">=2.2.3,<2.4-dev",
    "doctrine/doctrine-bundle": "1.2.*",
    "twig/extensions": "1.0.*",
    "symfony/assetic-bundle": "2.3.*",
    "symfony/swiftmailer-bundle": "2.3.*",
    "symfony/monolog-bundle": "2.3.*",
    "sensio/distribution-bundle": "2.3.*",
    "sensio/framework-extra-bundle": "2.3.*",
    "sensio/generator-bundle": "2.3.*",
    "incenteev/composer-parameter-handler": "~2.0",
    "friendsofsymfony/user-bundle": "*"

笔记2 :

也许这是相关的:当我尝试使用 https 与作曲家一起下载时,我遇到了一个例外:

You must enable the openssl extension to download files via https

问题是我的 php_openssl 已激活...

因此,即使它们被激活,作曲家也可能看不到扩展名(openssl 都没有,国际可能也没有)......我不知道

4

1 回答 1

1

问题是 Apache 使用的 php.ini 与命令行中使用的不一样。

要知道命令行使用什么 php.ini,请键入:

php --ini

并且必须在提到的 php.ini 中设置 php 扩展名。为了确保它没问题,我们可以输入:

php -m

wampserver 不会更改此 php.ini(通常是 php 文件夹之一),而是更改 Apache 一个(在 Apache 文件夹中)。

于 2013-11-15T11:13:46.583 回答