[英]Zend Framework 2 Form and InputFilter retuning different values
我有一個名稱為parameter
的元素(選擇)。 問題是在驗證時它返回如下錯誤:
The input was not found in the haystack
我知道這是由InArray
驗證程序返回的。 但是,當輸入有效時如何發生呢? 因此,我嘗試檢查表單元素和inputfilter。 所以我做了:
print_r($form->get('parameter')->getValue()); // returns frequency
print_r($form->getInputFilter()->get('parameter')->getValue()); // returns 0
我無法理解,為什么它們返回不同的值?
這是完整的代碼:
$postData = $request->getPost()->toArray();
$form->setData($postData);
print_r($form->get('parameter')->getValue());
if ($form->isValid()) {
$alarm->exchangeArray($form->getData());
$this->getAlarmMapper()->save($alarm);
$changesSaved = true;
}
print_r($form->getInputFilter()->get('parameter')->getValue());
據我所知,如果驗證失敗,則過濾器根本不會返回值,這就是它返回0的原因。因此,您可能應該查看驗證內部,為什么它無法驗證。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.