从变量下载文本内容

时间:2016-09-21 15:50:50

标签: php string variables text download

我创建了一个php脚本,它创建了一个文本字符串,我在屏幕上显示。 您知道如何仅将可变内容下载为文本文件吗?我alrady尝试过这样的事情:

...
<body>
<?php
$download_me = "download me...";
header("Content-type: text/plain");
header("Content-Disposition: attachment; filename=test.txt");
echo $download_me;
?>
</body>
...

但这会创建一个包含整个html文档的文本文件:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
</head>

<body>
download me...</body>
</html>

2 个答案:

答案 0 :(得分:3)

您的代码本身的这部分将完成您希望它执行的操作:

<?php
$download_me = "download me...";
header("Content-type: text/plain");
header("Content-Disposition: attachment; filename=test.txt");
echo $download_me;
?>

但是,您要将该代码包装在HTML代码中。这意味着两件事:

  1. 您正在尝试在已经开始发送输出后修改标题。
  2. 正在回复的文字不是唯一的内容,您还会在其周围输出HTML。
  3. 第一个问题可能是在服务器日志中产生错误。如果代码正在静静地忽略并继续执行,则第二个问题将解释您正在看到的输出。您会看到HTML,因为您正在输出HTML。

    如果您不想输出HTML,请从输出中删除HTML。只需使用发送文本文件响应的代码即可。

答案 1 :(得分:0)

我创建了一个包含这些内容的文件:

<?php
    $download_me = "download me...";
    header("Content-type: text/plain");
    header("Content-Disposition: attachment; filename=test.txt");
    echo $download_me;
?>

它有效,它作为txt文件下载。