【发布时间】:2013-01-21 07:06:18
【问题描述】:
我正在写入一个 .json 文件,我需要包含标题,这样我就可以毫无问题地访问它。我需要添加到 index.php 文件的标题:
header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
创建.json文件的代码sn-p是:
public function saveCalendarAsFile() {
$file2 = fopen("{$this->name}.txt", 'w');
fwrite($file2, json_encode($this->events));
fclose($file2);
}
public function saveCalendarAsFile() {
$file2 = fopen("{$this->name}.json", 'w');
fwrite($file2, json_encode($this->events));
fclose($file2);
}
无论我将标题放在哪里(在第 1、2 或 3 行之前,正如this post 所建议的那样),它都不会更改外部文件的 HTTP 响应(目前它被列为 text/plain)。
php 文件在文档中具有相同的标题,但根据那里的多个帖子,它需要位于“echo”语句之前。由于我的代码没有使用 echo 语句(因为我正在写入外部文件),所以必须在另一个地方放置标题,这样它就会影响 .json 文件。提前致谢。
【问题讨论】:
-
您不能将标题写入文件。标头需要由以后通过 HTTP 提供此文件的任何人设置,可能是网络服务器。
-
有几篇文章说您可以将标题写入文件。示例:stackoverflow.com/questions/398237/how-to-use-the-csv-mime-type。我错过了什么吗?
-
@dbalram 这个问题是将文本输出到浏览器,而不是保存文件。
-
当前有问题的函数从一个数组中生成多个 .txt 文件。我已经用完整的功能和它当前创建的文件的屏幕截图更新了原始问题。
标签: php json echo mime-types fwrite