gpt4 book ai didi

php - 传递给 Zend framework 2 验证器的空值

转载 作者:IT王子 更新时间:2023-10-29 00:07:16 24 4
gpt4 key购买 nike

如何通过 Zend framework 2 ValidatorChain 将空值传递到我的自定义验证器?

通过 allowEmpty(false) 在 ZF1 上是可能的

在具有空元素值的 ZF2 上:

  • 如果 allowEmpty = false,NotEmptyValidator 被添加到带有 breakOnFailure = true 的 ValidatorChain 的顶部,@see Zend/InputFilter/Input#injectNotEmptyValidator .

  • 如果allowEmpty = true,元素被认为是有效的,@see Zend/InputFilter/BaseInputFilter#isValid

    if ($input->allowEmpty()) {
    $this->validInputs[$name] = $input;
    continue;
    }

最佳答案

continue_if_empty 解决了我的问题。感谢@dson-horácio-junior。这是我使用的:

$this->add(array(
'name' => 'field',
'continue_if_empty' => true,
'filters' => array(
array('name' => 'StripTags'),
array('name' => 'StringTrim')
),
'validators' => array(
array(
'name' => 'Application\Form\Validator\Sample'
)
)
));

public function isValid($value, $context = null)
{
if ($value == '' && $context['otherfield'] == '') {
$this->error(self::INVALID_FIELD);

return false;
}

// ...
}

关于php - 传递给 Zend framework 2 验证器的空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14910431/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com