我正在尝试检查数字是否与 Zend 一起浮动。如果我调用此代码:
Zend_Locale_Format::isFloat('4.202', array('locale' => 'de'));
它返回真。然而,这:
Zend_Locale_Format::isFloat('4.20', array('locale' => 'de'));
返回假。为什么?
我正在尝试检查数字是否与 Zend 一起浮动。如果我调用此代码:
Zend_Locale_Format::isFloat('4.202', array('locale' => 'de'));
它返回真。然而,这:
Zend_Locale_Format::isFloat('4.20', array('locale' => 'de'));
返回假。为什么?
这是因为德语语言环境使用句点.
作为千位分隔符,而在您的第二个示例中,分隔符位于错误的位置。
例如:
13.001,45
true
传递给 时应该给出预期的值isFloat()
。
顺便说一句,4.202
被解释为4202
(也可以被认为是没有分数的浮点数)。
另请参阅:规范化和本地化,“29.3.6. 浮点值测试”部分