如何在 PHP 中生成边界?

Sta*_*ker 2 php curl multipartform-data boundary

我正在使用 Curl 库来模拟“多部分表单数据”提交,然后我注意到我需要生成一个唯一的字符串,但我不知道如何做到这一点。

例如:

Content-Type: multipart/form-data;  
boundary=---------------------------491299511942
Content-Length: 95418
-----------------------------491299511942
Content-Disposition: form-data; name="a"
-----------------------------491299511942
Content-Disposition: form-data; name="b"
/page.asp
-----------------------------491299511942
Content-Disposition: form-data; name="c"
-----------------------------491299511942
Content-Disposition: form-data; name="d"
true
-----------------------------491299511942
Content-Disposition: form-data; name="e"
1
-----------------------------491299511942
Content-Disposition: form-data; name="f"
Run Code Online (Sandbox Code Playgroud)

如何生成该边界?来自图书馆还是只是一些黑客?

编辑:在此示例中边界=491299511942

cet*_*ver 5

如果您使用curl,则不需要“手动”准备数据

$post_data = array(
    'a' => '@/absolute/path/to/file',
    'b' => '@/absolute/path/to/file',
);
curl_setopt($ch, CURLOPT_POST, true)
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data); 
Run Code Online (Sandbox Code Playgroud)

  • 嗯,但是边界呢? (3认同)
  • 如果给定“@filename”POST 数据,Curl 将正确生成 multipart/form-data 请求。您不需要手动生成它们。如果您不需要传输文件,那么您就不需要 multipart/form-data 开始。 (3认同)