0

我有这样的问题:

这是一个文件:

test_info.php

<?php

var_dump(strlen(file_get_contents('php://input')),
  $_SERVER['CONTENT_LENGTH']);

?>

这是 POST 文件:

<?php

echo file_get_contents('http://localhost/test_info.php', false, stream_context_create(array('http' => array('method' => 'POST', 'content' => str_repeat('a', 1024*1024*2), 'header' => 'Content-type: application/x-www-form-urlencoded'))));

?>

当我使用内容类型 x-www-form-urlencoded 时,我从 var_dump 得到这样的结果:

整数(1044736)字符串(7)“2097152”

如果我将 \n 字符放入 'Content-type: \n' 中,那么它会返回正确的结果:

整数(2097152)字符串(7)“2097152”

如果我将 content-type 更改为 multipart/form-data 它也会返回正确的结果。整数(2097152)

ps 在其他服务器上我也得到了正确的,没有修改内容类型。

也许有人知道为什么它返回错误呢?(剪辑内容)

谢谢

4

0 回答 0