如何解决FILTER_FLAG_ALLOW_THOUSAND和FILTER_VALIDATE_FLOAT一起做什么?
在FILTER_VALIDATE_FLOAT的上下文中,FILTER_FLAG_ALLOW_THOUSAND会做什么? the documentation说这是FILTER_VALIDATE_FLOAT的受支持选项,但没有说明它的实际作用,所以两者之间有什么区别
filter_var($val,FILTER_VALIDATE_FLOAT);
和
filter_var($val,FILTER_VALIDATE_FLOAT,FILTER_FLAG_ALLOW_THOUSAND);
?
解决方法
FILTER_FLAG_ALLOW_THOUSAND
记录在单独的URL中,在这里:https://www.php.net/manual/en/filter.filters.flags.php
引用:
允许使用逗号(,)作为数字的千位分隔符。
还有这个
$val = "123,456,789.123";
var_dump(
($v1=filter_var($val,FILTER_VALIDATE_FLOAT)),($v2=filter_var($val,FILTER_VALIDATE_FLOAT,FILTER_FLAG_ALLOW_THOUSAND)),$v1===$v2
);
输出:
bool(false)
float(123456789.123)
bool(false)
,
这个小测试向您展示了不同之处:
$val = "1,000.7";
$result1 = filter_var($val,FILTER_VALIDATE_FLOAT);
//result1 : bool(false)
$result2 = filter_var($val,FILTER_FLAG_ALLOW_THOUSAND);
//result2 : float(1000.7)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。