我在表单类中添加文件元素:
$this->add(array(
'type' => 'Zend\Form\Element\File',
'name' => 'logo_file',
'options' => array(
'label' => 'Select your logo image file:',
),
));
然后在模型中添加过滤器以过滤表单数据。我使用“filerenameupload”过滤器上传选定的文件:
$inputFilter = new InputFilter();
$inputFilter->add($factory->createInput(array(
'name' => 'logo_file',
'required' => false,
'filters' => array(
array('name' => 'filerenameupload',
'options'=>array(
//'target' => "./data/logo.png",
'randomize' => true,
)
),
),
)));
在控制器中,我通常调用 setInputFilter、setData 和 isValid。其他元素过滤良好,但“logo_file”没有保存在“./data/logo.png”中。实际上“Zend\Filter\File\RenameUpload”类中的“过滤器”函数不会被执行。
我使用这个链接: zf2 File Uploding Toturial
有人试图解决这个问题吗?