我正在使用ZipArchive()将一堆.txt文件压缩在一起。有人可以给我一个例子,说明如何从所有.txt文件的开头删除ID,然后再将它们放入zip中吗?
例如:
将是:
在拉链。
$name = str_replace(TXT_FILE_DIRECTORY . $group . '/', '', $file);
$zip->addFile($file, $name);
答案 0 :(得分:4)
这样的事情应该有效:
<?php
//Your $files array creation logic here
foreach ($files as $file) {
$fileName = preg_replace("/^\d+\-/", "", str_replace(TXT_FILE_DIRECTORY . $group . '/', '', $file));
$zip->addFile($file, $fileName);
}
?>
答案 1 :(得分:0)
也许您可以提供以下代码:
$this->zipfile->add_dir(FCPATH."files/");
for($u=$ini;$u<=$do;$u++){
$this->zipfile->add_file(implode("",file(FCPATH."files/batchsql_".$u.".txt")), FCPATH."files/batchsql_".$u.".txt");
}
header("Content-type: application/octet-stream");
header("Content-disposition: attachment; filename=zipfile.zip");
echo $this->zipfile->file();