我的wordpress中有一个json数据,我希望它作为文件下载为.json
。
$arr = array();
foreach($wp_options as $key){
$variable = get_option($key);
$arr[$key] = $variable;
}
$json = json_encode($arr);
我试过file_put_contents
喜欢
$file = 'file.json';
file_put_contents($file, json_encode($arr));
但什么也没发生。
关于如何将这些数据下载为.json
文件的任何想法?
你可以做下一件事:
$data = json_encode(['foo' => 'bar', 'baz' => 1]);
header('Content-Type: application/json');
header('Content-Disposition: attachment; filename=data.json');
header('Expires: 0'); //No caching allowed
header('Cache-Control: must-revalidate');
header('Content-Length: ' . strlen($data));
file_put_contents('php://output', $data);
我认为您可以使用FILE I/O功能。试试这个
$fp = fopen('file.json', 'a');
fwrite($fp, json_encode($arr));
fclose($fp);
您可以尝试在回显 JSON 数据之前设置 HTTP 响应标头内容处置(提示用户在本地保存响应)和内容类型(指示媒体类型)。
$data = json_encode(['foo' => 'bar']);
header('Content-Disposition: attachment; filename=data.json');
header('Content-Type: application/json');
echo $data;