Zend framework Zend#u Validate';s isValid()方法和$\u POST数组
在一本关于Zend框架的书中,我遇到了一个用于唯一电子邮件地址的自定义验证器。验证器扩展了Zend_Validate_Abstract,因此实现了isValid()接口 在接口中,方法签名是有效的($value)。在具体类中,它是有效的($value,$context=null) 作者解释说$context变量包含$\u POST数组,并且在方法的实现中依赖数组中的值。但是,当我尝试重现代码时,$context数组为null。此外,我在Zend_验证参考指南中找不到任何对$context的引用,也找不到传递$_POST值的引用 还有其他人见过这个吗 顺便说一句,这本书是KeithPope的Zend Framework 1.8 Web应用程序开发Zend framework Zend#u Validate';s isValid()方法和$\u POST数组,zend-framework,zend-validate,Zend Framework,Zend Validate,在一本关于Zend框架的书中,我遇到了一个用于唯一电子邮件地址的自定义验证器。验证器扩展了Zend_Validate_Abstract,因此实现了isValid()接口 在接口中,方法签名是有效的($value)。在具体类中,它是有效的($value,$context=null) 作者解释说$context变量包含$\u POST数组,并且在方法的实现中依赖数组中的值。但是,当我尝试重现代码时,$context数组为null。此外,我在Zend_验证参考指南中找不到任何对$context的引用,
谢谢 与
Zend\u Form\u元素::isValid
方法一起使用时,传递$context
数组
下面是来自Zend\u Form\u元素::isValid
的片段,它将$\u POST
作为$context
传递,这通常是从Zend\u Form::isValid
foreach ($value as $val) {
if (!$validator->isValid($val, $context)) {
$result = false;
if ($this->_hasErrorMessages()) {
$messages = $this->_getErrorMessages();
$errors = $messages;
} else {
$messages = array_merge($messages, $validator->getMessages());
$errors = array_merge($errors, $validator->getErrors());
}
}
}
当与
Zend\u Form\u元素::isValid
方法一起使用时,传递$context
数组
下面是来自Zend\u Form\u元素::isValid
的片段,它将$\u POST
作为$context
传递,这通常是从Zend\u Form::isValid
foreach ($value as $val) {
if (!$validator->isValid($val, $context)) {
$result = false;
if ($this->_hasErrorMessages()) {
$messages = $this->_getErrorMessages();
$errors = $messages;
} else {
$messages = array_merge($messages, $validator->getMessages());
$errors = array_merge($errors, $validator->getErrors());
}
}
}
Zend_Validate的文档似乎不完整
(ctl-f“验证上下文”)的手册中描述了此行为。Zend_Validate的文档似乎不完整 此行为在(ctl-f“验证上下文”)手册中有描述