使用带有参数的 file_get_contents 从 PHP 获取请求
我想向外部站点发送GET请求,但也想发送一些参数
I want to send a GET request to an external site, but also want to send some parameters
例如,我必须向 example.com 发送获取请求
for example i've to send a get request to example.com
我想执行 www.example.com/send.php?uid=1&pwd=2&msg=3&phone=3&provider=xyz
i want to execute www.example.com/send.php?uid=1&pwd=2&msg=3&phone=3&provider=xyz
我的代码是:
$getdata = http_build_query(
array(
'uid' => '1',
'pwd' => '2',
'msg'=>'3',
'phone'=>'9999',
'provider'=>'xyz'
)
);
$opts = array('http' =>
array(
'method' => 'GET',
'content' => $getdata
)
);
$context = stream_context_create($opts);
$result = file_get_contents('http://example.com/send.php', false, $context);
我收到服务器错误.
推荐答案
content
选项用于 POST
和 PUT
请求.对于 GET
,您可以将其附加为查询字符串:
The content
option is used with POST
and PUT
requests. For GET
you can just append it as a query string:
file_get_contents('http://example.com/send.php?'.$getdata, false, $context);
此外,method
默认为 GET
,因此您甚至不需要设置选项,也不需要创建流上下文.因此,对于这种特殊情况,您可以根据需要简单地使用第一个参数调用 file_get_contents
.
Furthermore, the method
defaults to GET
so you don't even need to set options, nor create a stream context. So, for this particular situation, you could simply call file_get_contents
with the first parameter if you wish.
相关文章