У меня есть следующая функция валидатора.
static $validates_size_of = array(
array('contactfirstname' , 'within' => array(1,50), 'allow_null' => true),
array('contactlastname' , 'within' => array(1,50), 'allow_null' => true),
array('contactemail' , 'within' => array(5,255), 'allow_null' => true), //[email protected] ~ smallest possible email is 5 characters.
array('companyemail' , 'within' => array(5,255), 'allow_null' => true, 'allow_blank' => true), //[email protected] ~ smallest possible email is 5 characters.
array('companyname' , 'within' => array(1,75), 'allow_null' => true),
array('contactphonenumber' , 'within' => array(10,20), 'allow_null' => true),
array('companyphonenumber' , 'allow_null' => true, 'allow_blank' => true, 'within' => array(10,20)),
array('address' , 'within' => array(1,120))
);
Для companyphonenumber я хочу ограничить количество символов от 10 до 20, но я также хочу, чтобы там была пустая строка или ноль, если ничего не было введено. Однако, если что-то было введено, то оно должно выполнить проверку длиной от 10 до 20 символов.
Это не работает однако. Вместо этого внутренняя проверка, кажется, все еще срабатывает, когда элемент пустой или нулевой. Я делаю что-то не так, или PHPActiveRecord имеет ошибку здесь?
Оказывается, это на самом деле работает правильно, я просто сделал глупую ошибку. Мои извенения. Игнорируйте этот вопрос.
Других решений пока нет …