Changeset 1424
- Timestamp:
- 06/13/06 07:56:44 (7 years ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/slickrick/lib/validator/sfNumberValidator.class.php
r848 r1424 56 56 $type = strtolower($this->getParameterHolder()->get('type')); 57 57 58 if ($type == 'float')58 switch ($type) 59 59 { 60 if (substr_count($value, '.') != 1) 60 case "decimal": 61 case "float": 61 62 { 62 // value isn't a float, shazbot! 63 $error = $this->getParameterHolder()->get('type_error'); 64 65 return false; 63 if (substr_count($value, '.') != 1) 64 { 65 // value isn't a float, shazbot! 66 $error = $this->getParameterHolder()->get('type_error'); 67 return false; 68 } 69 70 // cast our value to a float 71 $value = (float) $value; 72 73 break; 66 74 } 67 68 // cast our value to a float 69 $value = (float) $value; 75 76 case "int": 77 case "integer": 78 { 79 // Note: (Both 3 AND 3.0 are BOTH considered integers and 3.1 is not) 80 if ((float) $value != (int) $value) 81 { 82 // is not an integer. 83 $error = $this->getParameterHolder()->get('type_error'); 84 return false; 85 } 86 87 // cast our value to an integer 88 $value = (int) $value; 89 90 break; 91 } 92 70 93 } 71 94 … … 120 143 $type = strtolower($this->getParameterHolder()->get('type')); 121 144 122 if ($type != 'any' && $type != 'float') 145 // array of allowed types 146 $allowed_types = array('any', 'decimal', 'float', 'int', 'integer'); 147 148 if (!array_search($type, $allowed_types)) 123 149 { 124 150 // unknown type