我使用stream_context_create
和fopen
用PHP发送数据(POST方法)。
$opts['http']['content']
很好用,但我现在需要发送一个非常大的文件(无法在内存中分配)。
有没有办法告诉PHP content
是一个流?
e.g。 $opts['http']['content'] = fopen("/tmp/bigfile.bin");
是否可以使用其他方法(没有curl)仍然使用stream_context_create
?
答案 0 :(得分:1)
您可以改用fsockopen
。
阅读手册http://www.php.net/manual/en/function.fsockopen.php
通过这种方式,您可以使用fwrite
(http://www.php.net/manual/en/function.fwrite.php)按块发送数据。
但是您必须手动编写HTTP标头以将其与Web服务器一起使用。