0

我有一个有两个文件输入的上传表单。

我想重命名文件,以便每个文件都有一个唯一的名称。这是我的控制器中的内容

 public function mainAction()
    {
        $upload = new Zend_File_Transfer(); 
        $files = $upload->getFileInfo();

        foreach ($files as $file => $info) {
            $upload->addFilter('Rename', uniqid($file.'_').'.csv', $file);
        }

        $upload->receive();
     }

即使我已将文件指定为 setFilter 中的最后一个参数,它也会同时重命名两个文件,以使它们最终具有相同的名称。

4

1 回答 1

0

我想出了怎么做。

这是表格:

<input type="file" name="one">
<input type="file" name="two">

这进入控制器

       $renamefile1 = new Zend_Filter_File_Rename(array(
         'target'    => $path.'/file1.csv', // path to file
         'overwrite' => true
        ));

       //rename file 2 to file2
       $renamefile2 = new Zend_Filter_File_Rename(array(
         'target'    => $path.'/file2.csv', // path to file
         'overwrite' => true
        ));


       $names = $upload->getfileName();
       $file1 = $renamefile1->filter($names["one"]);
       $file2 = $renamefile2->filter($names["two"]);
于 2013-12-09T20:35:18.640 回答