我有一个包含两个文件输入的上传表单。
我想重命名文件,以便每个文件都有一个唯一的名称。这是我在控制器中的内容
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中的最后一个参数,它也会同时重命名这两个文件,以便它们最终具有相同的名称。
答案 0 :(得分: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"]);