PHP Скачать файл JSON

php json wordpress file

1565 просмотра

3 ответа

8052 Репутация автора

У меня есть данные JSON в моем WordPress, и я хочу, чтобы они были загружены в виде файла .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файла?

Автор: gadss Источник Размещён: 18.07.2016 02:49

Ответы (3)


0 плюса

20 Репутация автора

Я думаю, что вы можете использовать функцию ввода / вывода FILE. попробуй это

$fp = fopen('file.json', 'a');
fwrite($fp, json_encode($arr));
fclose($fp);
Автор: ddangi Размещён: 18.07.2016 03:16

0 плюса

305 Репутация автора

Вы можете попробовать установить заголовки ответа HTTP Content-Disposition (предлагает пользователю сохранить ответ локально) и Content-Type (указывает тип носителя) перед отображением данных JSON.

$data = json_encode(['foo' => 'bar']);

header('Content-Disposition: attachment; filename=data.json');
header('Content-Type: application/json');
echo $data;
Автор: anFfWuy7qbJWaPp6DSOR Размещён: 18.07.2016 04:07

0 плюса

17 Репутация автора

Вы можете сделать следующее:

$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);
Автор: Alexander N Размещён: 18.07.2016 04:10
Вопросы из категории :
32x32