我使用Zend Form并上传文件。我需要重命名并添加addFilter。但是,如果我尝试像代码中那样获取文件的扩展名,我会收到错误消息“太多的文件,最多允许'1'个,但给出了'2'个”。如果我尝试使用$ _FILES获取扩展名,它似乎可以解决问题,但看起来很丑陋。请告诉我如何重命名文件并保存其扩展名?
$form = new Form_ImportSubscribers();
if ($this->getRequest()->isPost()) {
$formData = $this->getRequest()->getPost();
if ($form->isValid($formData)) {
//it looks like it works but it's ugly solution
// $extension = pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION);
//causes an error "Too much files, maximum '1' are allowed but '2' are given"
$extension = pathinfo($form->file->getFileName(), PATHINFO_EXTENSION);
$form->file->addFilter('Rename', $accountId . '_' . time() . '.' . $extension);
if (!$form->file->receive()) {
$this->view->form = $form;
$this->view->listName = $list->list_name;
return;
}