我正在使用移植到我的框架中的Symfony Translations。我在docs中找到了这个:
'{0} There are no apples|{1} There is one apple|]1,19] There are %count% apples|[20,Inf[ There are many apples'
The above string specifies four different intervals: exactly 0, exactly 1, 2-19, and 20 and higher.
来源:http://symfony.com/doc/current/components/translation/usage.html#explicit-interval-pluralization
我的问题是,我需要为1.5
使用不同的复数,而不是1
。我怎样才能做到这一点?当我将1.5
作为计数参数传递时,会分配1
个复数。
我认为将时间间隔指定为]1,something]
会有效,但根据文档,它与[2,something]
基本相同(在这种情况下,无论如何我都没有看到使用]1
的观点) 。我怎样才能涵盖1.5
复数?
答案 0 :(得分:1)
根据Symfony参考,Interval
(http://api.symfony.com/2.7/Symfony/Component/Translation/Interval.html)和TranslatorInterface(http://api.symfony.com/2.7/Symfony/Component/Translation/TranslatorInterface.html),接受int
值,所以我认为你想要实现的是不可能。
但是,您可以覆盖转换程序服务并实现您的逻辑。有关详细信息,请参阅here。