PHP文件获取内容,http版本

时间:2012-04-23 12:01:34

标签: php http file-get-contents

我正在使用file_get_contents函数来控制客户端, (例如http://ip:port/?light=on

在浏览器中使用相应的命令时,当我使用相同的url和file_get_contents函数时,它不起作用。

当我发送请求时,我注意到浏览器正在使用http / 1.1,而file_get_contents正在使用http / 1.0。

我认为http的版本是我的代码无效的问题,

如何在de file_get_contents函数中更改此版本的http?或者解决它?

1 个答案:

答案 0 :(得分:3)

您可以使用上下文设置HTTP版本:

$context = stream_context_create(array('http'=>array('protocol_version'=>'1.1')));
file_get_contents('http://ip:port/?light=on', false, $context);

另请参阅上下文选项的完整列表http://www.php.net/manual/en/context.http.php

请注意,如果服务器使用分块编码,则必须使用PHP 5.3或更高版本。