Получение данных запроса в виде потока и загрузка их на сервер на php

#php #laravel #lumen

#php #laravel #lumen

Вопрос:

Я создаю серверный API (в lumen) для приложения Android, в которое пользователь будет загружать n количество изображений и видео. Данные будут отправлены в формате chunk (байты). Изображения будут повторены и отправлены в виде байтового потока (на Java). Как мне получить потоковые байтовые данные из запроса и успешно сохранить их.

Комментарии:

1. file_get_contents('php://input') может быть? Единственное, что я могу придумать.

2. @ArtisticPhoenix поскольку я буду получать несколько потоковых данных, то есть массив потоков, создаст ли это проблему ?.

Ответ №1:

Я закончил использовать php://input stream для получения входных данных (в байтах) и file: // stream для записи данных. ниже приведен пример кода.

 $inputStream = fopen(php://input, 'rb');
$writableStream = fopen(file://filepath_here,'wb');
stream_copy_to_stream($inputStream, $writableStream);
fclose($inputStream);
fclose($writableStream);