Отдать файл для скачивания пользователю

209
18 мая 2022, 02:00

Отправляю POST с параметрами, получаю файл на скачивание. Пробую сделать подобное на php, но в консоле вижу только содержимое файлы, как отдать файл на скачивание пользователю ?

$params = array(
    'param1' => '123',
    'param2' => 'abc'
);
$result = file_get_contents($url, false, stream_context_create(array(
    'http' => array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => http_build_query($params)
    )
)));
echo $result;
Answer 1

Нашел решение. Нужно добавить в конец скрипта код.

if (ob_get_level()) { ob_end_clean(); }
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=' . basename($name));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($name));
readfile($name);
exit;
READ ALSO
Redirect Laravel когда товар внизу списка

Redirect Laravel когда товар внизу списка

Всем приветДелаю тестовый инет магазин, когда кто то добавляет товар в корзину я поставил return redirect()->back();

124
Почему тег HTML не работает в php коде Laravel

Почему тег HTML не работает в php коде Laravel

Делаю flash уведомления, хочу чтобы название товара выделялось жирным, поэтому добавил тег , но он чего то не срабатываетВероятно банальная...

271
цикл с записью в массив

цикл с записью в массив

есть такой код, мне нужно выполнить этот код N количество раз, и записать в массив, то есть $arr = ['3%' => 'Выпало столько то раз'], что бы при каждой...

152
Получаю сообщение invalid function name ..myjino.ru/wp-includes/class-wp-hook.php on line 287

Получаю сообщение invalid function name ..myjino.ru/wp-includes/class-wp-hook.php on line 287

загрузил Вордпресс на мой новый аккаунт на хостинге ДжиноПолучаю следующее сообщение - см ниже

163