【问题标题】:PHP pass HTML string to create ZIP archivePHP 传递 HTML 字符串来创建 ZIP 存档
【发布时间】:2013-03-08 19:00:22
【问题描述】:

所以我试图从 2 个字符串创建一个 Zip 文件。 1是一个html字符串,另一个是纯文本。到目前为止,我似乎只是让文本字符串正常工作,但应该是 HTML 的文件只是一个空白文件。知道为什么吗?

$string1 = $_POST["html_string"];
$string2 = "Some data Some data Some data Some data Some data Some data";


$filename = "test.zip";
$zip = new ZipArchive();


if ($zip->open($filename, ZIPARCHIVE::CREATE)==TRUE) {

    $zip->addFromString("string1.html", $string1);
    $zip->addFromString("string2.txt", $string2);
    $zip->close();
}


header("Content-Type: application/zip"); 
header("Content-Disposition: attachment; filename=\"".$filename."\"");

//clearstatcache();

header("Content-Length: ".filesize($filename));
readfile($filename);
unlink($filename);

感谢您的帮助。

【问题讨论】:

  • echo $_POST["html_string"]; 显示什么?

标签: php html download zip


【解决方案1】:

尝试替换您的代码

$string1 = $_POST["html_string"];

$string1 = '<html>

<title></title>

</html>';

并且工作了。

您确定 $_POST["html_string"] 不为空吗?添加 var_dump($_POST);查看是否有一些数据或更新您的代码,在开始时添加检查。

if (empty($_POST["html_string"]))
{

echo 'html_string is empty';
exit;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    • 2021-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多