Прямой ответ: вы не можете этого сделать. PHP настаивает на том, чтобы анализировать его сам, всякий раз, когда он видит тип содержимого multipart / form-data. Необработанные данные не будут вам доступны. К сожалению. Но вы можете взломать его.
Я столкнулся с подобной проблемой: партнер отправлял неправильно отформатированные данные как multipart / form-data, PHP не мог их проанализировать и не выдавал их, поэтому я мог разобрать их сам.
Решение? Я добавил это в свой apache conf:
<Location "/backend/XXX.php">
SetEnvIf Content-Type ^(multipart/form-data)(.*) NEW_CONTENT_TYPE=multipart/form-data-alternate$2 OLD_CONTENT_TYPE=$1$2
RequestHeader set Content-Type %{NEW_CONTENT_TYPE}e env=NEW_CONTENT_TYPE
</Location>
Это изменит входящий запрос Content-Type на XXX.php с multipart / form-data на multipart / form-data-alternate, что достаточно, чтобы запретить PHP пытаться его проанализировать
После этого вы можете, наконец, прочитать исходные данные из php: // input и проанализировать их самостоятельно.
Это некрасиво, но я не нашел лучшего или какого-либо другого решения, кроме как попросить партнера исправить свою сторону.
NB! Когда вы сделаете то, что я описал здесь, $ _FILES будет пустым.