Php 用于设置表单字段名称(多部分/表单数据)的HTTP头

Php 用于设置表单字段名称(多部分/表单数据)的HTTP头,php,http,multipartform-data,Php,Http,Multipartform Data,我将原始HTTP请求传递给PHP接收的apache服务器。请求的类型为multipart/form data,即提交HTML表单时使用的相同MIME类型。 但是,我不确定使用什么HTTP头来设置表单字段名,我只是假设它是定义此字段的头,不知道它还可以是什么,然后可以在PHP中使用它来访问$\u GET或$\u文件中的字段 HTTP请求可能如下所示: Content-type: multipart/form-data;boundary=main_boundary --main_boundary

我将原始HTTP请求传递给PHP接收的apache服务器。请求的类型为multipart/form data,即提交HTML表单时使用的相同MIME类型。 但是,我不确定使用什么HTTP头来设置表单字段名,我只是假设它是定义此字段的头,不知道它还可以是什么,然后可以在PHP中使用它来访问$\u GET或$\u文件中的字段

HTTP请求可能如下所示:

Content-type: multipart/form-data;boundary=main_boundary

--main_boundary
Content-type: text/xml
<?xml version='1.0'?>
<content>
Some content goes here
</content>

--main_boundary
Content-type: multipart/mixed;boundary=sub_boundary

  --sub_boundary
  Content-type: application/octet-stream

  File A contents

  --sub_boundary
  Content-type: application/octet-stream

  File B contents

  --sub_boundary

--main_boundary--

Content Disposition标头的name参数具有控件名称。每个子区域边界后应有一个

--sub_boundary
Content-Disposition: form-data; name="mycontrol"
我差点忘了:如果字段是一个文件控件,那么还有一个文件名字段和一个内容类型头

--sub_boundary
Content-Disposition: form-data; name="mycontrol"; filename="file1.xml"
Content-Type: application/xml;
如果文件不是文本,您还需要

Content-Transfer-Encoding: binary

Content Disposition标头的name参数具有控件名称。每个子区域边界后应有一个

--sub_boundary
Content-Disposition: form-data; name="mycontrol"
我差点忘了:如果字段是一个文件控件,那么还有一个文件名字段和一个内容类型头

--sub_boundary
Content-Disposition: form-data; name="mycontrol"; filename="file1.xml"
Content-Type: application/xml;
如果文件不是文本,您还需要

Content-Transfer-Encoding: binary