首页 >后端开发 >php教程 >如何在 PHP 中使用 file_get_contents() 提交 HTTP POST 数据?

如何在 PHP 中使用 file_get_contents() 提交 HTTP POST 数据?

Barbara Streisand
Barbara Streisand原创
2024-12-24 12:16:11403浏览

How Can I Submit HTTP POST Data Using file_get_contents() in PHP?

使用 file_get_contents() 提交 HTTP POST 数据

挑战:

许多 URL 需要数据发布互动信息,例如登录页面。然而,file_get_contents() 函数本身并不支持数据提交。

解决方案:

为了解决这个问题,PHP 使用流上下文,它允许 HTTP POST 数据提交之内file_get_contents().

实现:

利用流上下文,您可以配置请求行为:

$postdata = http_build_query(
    ['var1' => 'some content', 'var2' => 'doh']
);

$opts = [
    'http' => [
        'method'  => 'POST',
        'header'  => 'Content-Type: application/x-www-form-urlencoded',
        'content' => $postdata
    ]
];

$context = stream_context_create($opts);

$result = file_get_contents('http://example.com/submit.php', false, $context);

在此示例中:

  • $postdata 包含要处理的数据已提交。
  • $opts 定义流选项,包括 POST 方法、适当的标头和数据负载。
  • $context 是使用指定选项创建的流上下文。
  • file_get_contents() 使用自定义上下文检索响应。

替代方案方法:

或者,考虑使用 cURL,它提供更广泛的自定义选项,通常用于处理 HTTP POST 请求。

以上是如何在 PHP 中使用 file_get_contents() 提交 HTTP POST 数据?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn