我正在使用macO Sierra安装PHP 7。我已经安装了ICU和Intl,以便使用symphony的Intl组件。
我试图这样做:
$localCurrency = new NumberFormatter('en_US', \NumberFormatter::CURRENCY);
$localCurrency = $localCurrency->getTextAttribute(NumberFormatter::CURRENCY_CODE);
但是我收到了这个错误:
Symfony \ Component \ Intl \ NumberFormatter \ NumberFormatter :: __ construct()方法的参数$ locale value' en_US'行为没有实现。只有语言环境" en"得到支持。请安装" intl"完全本地化功能的扩展。
问题是我安装了intl和ICU,它在php -i
和phpinfo();
都可见。
此外,我已将intl组件安装到symphony中,它也在供应商中可见。
所以我真的不知道这是什么问题。
答案 0 :(得分:-1)
看起来问题出在use语句中,我应该只有use NumberFormatter;
而不是那个symphony,因为它只是一个polyfill。
现在工作正常。