vc客户端使用http post abc.txt文件给php server端,server端收到的abc.txt文件是空的,是不是php://input问题呢,请高手指教。谢谢!vc客户端:
Content-Disposition: form-data; name="upload"; filename="abc.txt"
Content-Type: text/plain
php server端:
<?php
$input = file_get_contents('php://input');
file_put_contents('abc.txt',$input);
?>

解决方案 »

  1.   

    上传文件是使用 enctype="multipart/form-data"
    而 php://input 不接受这种数据,而是原始post数据(raw)
      

  2.   

    在手册上看到了,
    php://input 是个可以访问请求的原始数据的只读流。 POST 请求的情况下,最好使用 php://input 来代替 $HTTP_RAW_POST_DATA,因为它不依赖于特定的 php.ini 指令。 而且,这样的情况下 $HTTP_RAW_POST_DATA 默认没有填充, 比激活 always_populate_raw_post_data 潜在需要更少的内存。 enctype="multipart/form-data" 的时候 php://input 是无效的。 
      

  3.   

    查了手册, enctype="multipart/form-data" 的时候 php://input 是无效的,使用$_FILES搞定。谢谢各位啦