/** * numeric * 数値チェック * integerなどの上限チェックを同時に行う * * @access public * @author hagiwara * @param array $check * @param integer $limit * @return boolean */ public static function numeric($check, $limit = 2147483647) { //providersが間違いなく$contextの内容と考えられるので初期値を入力しなおす if (is_array($limit) && isset($limit['providers'])) { $limit = 2147483647; } //coreのチェックを先に行う if (!parent::numeric($check)) { return false; } return abs($check) <= $limit; }
/** * testNumeric method * * @return void */ public function testNumeric() { $this->assertFalse(Validation::numeric('teststring')); $this->assertFalse(Validation::numeric('1.1test')); $this->assertFalse(Validation::numeric('2test')); $this->assertTrue(Validation::numeric('2')); $this->assertTrue(Validation::numeric(2)); $this->assertTrue(Validation::numeric(2.2)); $this->assertTrue(Validation::numeric('2.2')); }