php - 如果 float/double 等于或大于/小于最小值,如何在 Zend Framework 中进行验证?

标签 php zend-framework zend-validate

我有一个简单的问题,我还没有找到答案,那就是

如何使用内置的 Zend Validator 来测试 float/dobule 是否大于或等于最小值?

我已经搜索了符合我要求的答案,并且发现了这个问题 GreaterOrEqual validator in Zend Framework但我的有点不同。此外,我知道我可以创建自己的验证器或像这样复制网络上的验证器之一 Greater Than or Equal Validator但我想知道如何使用内置验证器进行验证。

这是一个让你更好理解的例子。

如果我有一个整数,我可以这样实现这个目标:

$Validators = array(new Zend_Validate_Int(), new Zend_Validate_GreaterThan($min - 1));
// Validate the number

相反,如果我有一个 float ,我就无法做到这一点,正如许多程序员所知,由于舍入问题(What Every Computer Scientist Should Know About Floating-Point Arithmetic),试图用 float 做一些肮脏的事情会产生很多问题.

感谢大家

最佳答案

这不完全是您要求的,但我认为这是最简单的: 关键是“包容”。

    $number->addValidator('Float');
    $number->addValidator('Between', false,array('min' => '5,5', 'max' => $greatest_number+1, 'inclusive' => true));

这里你有所有的验证器:

Zend_Validate_Abstract Class Reference

所以您的问题的答案是“否”, float 没有大于或等于验证器。

关于php - 如果 float/double 等于或大于/小于最小值,如何在 Zend Framework 中进行验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7801088/

相关文章:

php - MYSQL/PHP 插入日期

php - 如何根据复选框输入回显多行数据?

php - 在 Symfony2 中创建服务表单

php - 如何成功地将 Zend Framework 1 应用程序从 CloudControl Luigi 迁移到 Pinky 堆栈?

php - Zend 表单编辑和 Zend_Validate_Db_NoRecordExists

php - MVC - 一个模型可以由其他几个模型组成吗?

zend-framework - ZendFramework 应用程序中的管理部分

php - 指定的 Controller 无效(错误)- Zend Framework

php - 添加验证 GreaterThan - Zend Form

zend-framework - Zend Form Validation::Does exist oposite validator to Identical?[如何检查与 'str' 不相同的输入]