我有这样的问题:
这是一个文件:
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 在其他服务器上我也得到了正确的,没有修改内容类型。
也许有人知道为什么它返回错误呢?(剪辑内容)
谢谢