1--TEST-- 2request_parse_body() with multipart 3--ENV-- 4REQUEST_METHOD=PUT 5--POST_RAW-- 6Content-Type: multipart/form-data; boundary=---------------------------84000087610663814162942123332 7-----------------------------84000087610663814162942123332 8Content-Disposition: form-data; name="post_field_name" 9 10post field data 11-----------------------------84000087610663814162942123332 12Content-Disposition: form-data; name="file_name"; filename="original_file_name.txt" 13Content-Type: text/plain 14 15file data 16-----------------------------84000087610663814162942123332-- 17--FILE-- 18<?php 19 20[$_POST, $_FILES] = request_parse_body(); 21 22var_dump($_POST, $_FILES); 23 24$file_path = __DIR__ . '/put_multipart_uploaded_file.txt'; 25move_uploaded_file($_FILES['file_name']['tmp_name'], $file_path); 26var_dump(file_get_contents($file_path)); 27 28?> 29--CLEAN-- 30<?php 31$file_path = __DIR__ . '/put_multipart_uploaded_file.txt'; 32@unlink($file_path); 33?> 34--EXPECTF-- 35array(1) { 36 ["post_field_name"]=> 37 string(15) "post field data" 38} 39array(1) { 40 ["file_name"]=> 41 array(6) { 42 ["name"]=> 43 string(22) "original_file_name.txt" 44 ["full_path"]=> 45 string(22) "original_file_name.txt" 46 ["type"]=> 47 string(10) "text/plain" 48 ["tmp_name"]=> 49 string(%d) "%s" 50 ["error"]=> 51 int(0) 52 ["size"]=> 53 int(9) 54 } 55} 56string(9) "file data" 57