PHP忽略发布的数据

PHP忽略发布的数据,php,post,Php,Post,我试图将一个图像作为base64编码字符串发布到php页面,当图像文件小于800KB时,它可以正常工作,但如果文件更大,$\u post var会丢失图像值 post数据看起来像 email=xyz@xyz.com&image={image base64 encoded}&name=Bob 如果我使用var\u dump($\u POST)检查$\u POST变量,并且文件小于800KB,它将打印以下内容: array(3) { ["email"]=>string

我试图将一个图像作为base64编码字符串发布到php页面,当图像文件小于800KB时,它可以正常工作,但如果文件更大,$\u post var会丢失图像值

post数据看起来像

email=xyz@xyz.com&image={image base64 encoded}&name=Bob
如果我使用var\u dump($\u POST)检查$\u POST变量,并且文件小于800KB,它将打印以下内容:

array(3) {
    ["email"]=>string(11) "xyz@xyz.com"
    ["image"]=>string(936816) "{image base64 encoded}"
    ["name"]=>string(3) "Bob"
}
…如果文件大于约800KB,则打印:

array(2) {
    ["email"]=>string(11) "xyz@xyz.com"
    ["name"]=>string(3) "Bob"
}
但在这两种情况下,数据肯定都会发布到php脚本中(我通过fiddler检查了webrequests)

post_max_size设置为8MB,内存限制为128MB,因此这应该不是问题


提前感谢您的建议

我认为这与服务器限制有关。。。虽然POST数据没有限制,但有时(大多数情况下)存在一些传出/传入服务器/脚本限制。 你们能试着把二进制内容放到gzip上,并试着把它推到POST上吗

$encoded = base64_encode(gzcompress(serialize($original)));

$original = unserialize(gzuncompress(base64_decode($_POST['encoded'])));

您的表单的标签代码是什么?我没有使用表单,我是通过来自c#的WebRequest发布数据的,但正如我在帖子中所说的,如果我使用fiddler检查请求,它是正确的,所以这应该不会导致问题!可能重复的