对于 Zend_Form_Element_File,添加 Size 验证器和使用 setMaxFileSize 有什么区别吗?
$file->addValidator('Size', false, 1000000);
$file->setMaxFileSize(1000000);
对于 Zend_Form_Element_File,添加 Size 验证器和使用 setMaxFileSize 有什么区别吗?
$file->addValidator('Size', false, 1000000);
$file->setMaxFileSize(1000000);
setMaxFileSize(1000000) 将限制客户端的大小,即会在 html 中创建特殊的 MAX_FILE_SIZE 标签,例如:
<input type="hidden" name="MAX_FILE_SIZE" value="1000000" />
然而,这不是那么安全,因为它很容易改变你的 html。无论如何,如果您不指定 setMaxFileSize,ZF 将自动创建它,其值等于您 php.ini 中的 upload_max_filesize 的值。
AddValidator 执行更安全的验证,因为您无法更改 html 中最大文件大小的值。您还可以在使用验证器时指定自定义错误消息。