使用PHP HttpRequest发送文件数据

时间:2012-04-10 13:56:10

标签: php httprequest

我有一个变量中包含的数据(可以写成文件),但我希望使用PHP HttpRequest将其发送到不同的服务器。

我想过使用addRawPostData但我现在已弃用了,我宁愿不将文件写入客户端服务器然后尝试发送它。如果有人有任何想法让我知道。我还尝试在正常post的字段中提交变量的原始数据,但它似乎已损坏。

我试图发送的文件是一个torrent文件,如果这有任何区别的话。

再次感谢

3 个答案:

答案 0 :(得分:3)

您可以使用cURL这是HTTP POST的一个简单示例:

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,"http://www.site.com/url");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,"key=value&key1=value1");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$server_output = curl_exec ($ch);

curl_close ($ch);

// Check response
if ($server_output == "OK") { 

有一个使用this answer

中的cURL发布文件字符串的示例

答案 1 :(得分:1)

使用HttpRequest发送文件:http://www.php.net/manual/en/httprequest.addpostfile.php 要添加原始发布数据,我们不会弃用http://www.php.net/manual/en/httprequest.addrawpostdata.php - HttpRequest::addRawPostData,而不推荐使用HttpRequest::setRawPostData

但是,HttpRequest只是cURL的包装,在某些情况下,最好直接使用cURL

答案 2 :(得分:0)