Maison > développement back-end > tutoriel php > php接收post文件问题

php接收post文件问题

WBOY
Libérer: 2016-06-23 14:14:00
original
1276 Les gens l'ont consulté

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端:
$input = file_get_contents('php://input');
file_put_contents('abc.txt',$input);
?>


回复讨论(解决方案)

要用$_FILE接收参数。

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

在手册上看到了,
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 是无效的。 

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

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal