Zend framework 我可以限制用户在zend表单文本字段中只写站点链接吗
//我想用户只能写链接,而不是其他文本Zend framework 我可以限制用户在zend表单文本字段中只写站点链接吗,zend-framework,Zend Framework,//我想用户只能写链接,而不是其他文本 $url = $this->createElement('textarea','url'); $url->setLabel('Url: '); $url->setRequired(true); $url->setAttrib('cols',40); $url->setAttrib('rows',4); $this->addElement($url); 假设您只想验证一个链接,您可
$url = $this->createElement('textarea','url');
$url->setLabel('Url: ');
$url->setRequired(true);
$url->setAttrib('cols',40);
$url->setAttrib('rows',4);
$this->addElement($url);
假设您只想验证一个链接,您可以向字段中添加URL验证程序。像下面这样
$url = $this->createElement('textarea','url');
$url->setLabel('Url: ');
$url->setRequired(true);
$url->setAttrib('cols',40);
$url->setAttrib('rows',4);
$this->addElement($url);
$url = new Zend_Form_Element_Text('url');
$url->setOptions(
array(
'label' => 'Url: ',
'validators' => array(
'NotEmpty',
array(
'Callback',
true,
array(
'callback' => function($value) {
return Zend_Uri::check($value);
}
),
'messages' => array(
Zend_Validate_Callback::INVALID_VALUE => 'Please enter a valid URL',
),
),
),
)
);
您可以使用自定义验证器。
网络上有很多例子,比如or(法语)
$url = $this->createElement('textarea','url');
$url->setLabel('Url: ');
$url->setRequired(true);
$url->setAttrib('cols',40);
$url->setAttrib('rows',4);
$this->addElement($url);
编码您的\u Validate\u Uri
类后,您可以执行以下操作:
$url = $this->createElement('textarea','url');
$url->setLabel('Url: ');
$url->setRequired(true);
$url->setAttrib('cols',40);
$url->setAttrib('rows',4);
$this->addElement($url);
$url->addValidator(new Your_Validate_Uri());