PHP-filter\u var和filter\u VALIDATE\u FLOAT的BUG
我认为这个过滤器有一个bug,或者我做错了什么: 试试这个:PHP-filter\u var和filter\u VALIDATE\u FLOAT的BUG,php,range,filter-var,Php,Range,Filter Var,我认为这个过滤器有一个bug,或者我做错了什么: 试试这个: $options = array( 'options' => array( 'default' => 3, 'min_range' => 1000.0, 'max_range' => 5000.6, ) ); $VariableVa
$options = array(
'options' => array(
'default' => 3,
'min_range' => 1000.0,
'max_range' => 5000.6,
)
);
$VariableValue2 = 5698;
$VariableValue4 = 5698.2;
$chicco3 = filter_var($VariableValue2, FILTER_VALIDATE_INT, $options);
$chicco4 = filter_var($VariableValue4, FILTER_VALIDATE_FLOAT, $options);
它应该不会验证它。。。事实上,该值:5698大于5000.6!!!!
但是有了FILTER\u VALIDATE\u INT,它就可以正常工作了!!如果不验证它,它将返回默认值3。。。完美的
相反,使用FILTER\u VALIDATE\u FLOAT来验证它。。。它返回5698.2!!!我做错了什么
谢谢大家
萨缪尔检查;看起来您对过滤器使用了错误的选项。min\u range
和max\u range
选项用于filter\u validate\u int
过滤器
顺便说一句,如果你只是检查一个数字的大小,那么使用某种
if( ( $number > 1000 ) && ( $number < 5000.6 ) )
// do stuff;
if($number>1000)和&($number<5000.6))
//做事;
改为机械装置。检查;看起来您对过滤器使用了错误的选项。min\u range
和max\u range
选项用于filter\u validate\u int
过滤器
顺便说一句,如果你只是检查一个数字的大小,那么使用某种
if( ( $number > 1000 ) && ( $number < 5000.6 ) )
// do stuff;
if($number>1000)和&($number<5000.6))
//做事;
机制。在7.4之前,FILTER\u VALIDATE\u FLOAT不接受范围选项。检查7.4之前的。过滤器\u验证\u浮动不接受范围选项。查看。哦,非常感谢。。。我想你是对的。。。但我认为它使用相同的选项。。。因此,我无法使用函数FILTER\u validate\u float验证浮点的范围?看起来很奇怪,用FILTER\u VALIDATE\u INT你能做到,而用FILTER\u VALIDATE\u FLOAT你不能做到。。。不管怎样,我会自己做的。。。再次感谢……:)它已添加到7.4.0中!哦,非常感谢。。。我想你是对的。。。但我认为它使用相同的选项。。。因此,我无法使用函数FILTER\u validate\u float验证浮点的范围?看起来很奇怪,用FILTER\u VALIDATE\u INT你能做到,而用FILTER\u VALIDATE\u FLOAT你不能做到。。。不管怎样,我会自己做的。。。再次感谢……:)它已添加到7.4.0中!更新:
min\u range
和max\u range
选项现在在PHP>=7.4.0中可用更新:min\u range
和max\u range
选项现在在PHP>=7.4.0中可用