我在编辑或创建时遇到SonataAdminBundle问题:
Symfony \ Component \ Locale \ Stub \ StubNumberFormatter :: getSymbol()是 未实现。请安装' intl'扩展为完整 本地化能力。
或
致命错误:Class' ResourceBundle'找不到 F:\ XAMPP \ htdocs中\ Symfony2的\供应商\ symfony的\ symfony中的\ src \的Symfony \分量\区域\ Locale.php 在第157行
我无法在我的基本主机
中安装php扩展程序我找到了this,但它只是在调用NumberFormatter
时才有效,显然我必须创建调用intl扩展所需的每个类,但我在这里请专家看看其他方法解决方案/解决方法/建议在没有intl扩展的情况下开始工作
答案 0 :(得分:0)
问题是函数getSymbole未在Symfony \ Component \ Locale \ Stub \ StubNumberFormatter中定义。抛出异常,这就是它的正文:
public function getSymbol($attr)
{
throw new MethodNotImplementedException(__METHOD__);
}
应该实现删除此异常,您可以这样修改:
public function getSymbol($attr)
{
switch($attr) {
case self::CURRENCY_SYMBOL:
return '$';
case self::DECIMAL_SEPARATOR_SYMBOL:
return '.';
case self::DIGIT_SYMBOL:
return '#';
case self::EXPONENTIAL_SYMBOL:
return 'E';
case self::GROUPING_SEPARATOR_SYMBOL:
return ',';
;
}
这个修改对我很好,我遇到了同样的问题。但是,如果您通过composer升级symfony版本,则可能会丢失修改。