簡體   English   中英

在使用ZipArchive()添加到zip之前,如何重命名.txt文件?

[英]How to rename .txt files before being added to zip using ZipArchive()?

我正在使用ZipArchive()將一堆.txt文件壓縮在一起。 有人可以舉一個例子,在將所有.txt文件放入zip文件之前,如何從它們的開頭刪除ID嗎?

例如:

  • 144 apples.txt
  • 2- oranges.txt
  • 25555-bananas.txt

將會:

  • apples.txt
  • oranges.txt
  • bananas.txt

在拉鏈中。

$name = str_replace(TXT_FILE_DIRECTORY . $group . '/', '', $file);
$zip->addFile($file, $name);

這樣的事情應該起作用:

<?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);
    }
?>

也許您可以提供以下代碼:

    $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();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM