Архивация текста на лету

  1. <?php
  2. include('pcl_zip.php');
  3. if (isset($_POST['go'])) {
  4. $code = isset($_POST['text']) ? $_POST['text'] : die('Так не пойдет');
  5. $name = 'tmp_' . date('dmYHis', time()) . '.zip';
  6. $arh = 'text.txt';
  7. file_put_contents($arh, $code);
  8. $zip = new PclZip($name);
  9. $act = $zip->create($arh);
  10. if ($act == 0) {
  11. echo 'Error : ' . $zip->errorInfo(true);
  12. }
  13. unlink($arh);
  14. $file = file_get_contents($name);
  15. unlink($name);
  16. ob_clean();
  17. header('Content-Type: application/zip');
  18. print($file);
  19. flush();
  20. unlink($file);
  21. } else {
  22. echo '<form action="" method="post"><textarea name="text" rows="5" cols="40"></textarea><br/><input type="submit" name="go" value="Создать" /></form>';
  23. }
  24. ?>
Качаем pcl_zip с сайта разработчика http://www.phpconcept.net/pclzip/pclzip-downloads
Подключаем класс к файлу и пользуемся.
Инструкции по классу можно найти на том же сайте, или в гугл.
По сути можно отдавать таким методом небольшие файлы, не обязательно это будет текст. Мусора не оставляет.
Пользуйтесь на здоровье

Реклама

Мы в соцсетях

tw tg yt gt