首页 > 后端开发 > php教程 > 如何在 PHP 中正确解析 JSON POST 请求体?

如何在 PHP 中正确解析 JSON POST 请求体?

Mary-Kate Olsen
发布: 2024-12-16 12:10:19
原创
390 人浏览过

How to Properly Parse JSON POST Request Bodies in PHP?

解决 PHP 的 JSON POST 中的 HTTP 请求正文解析

在 PHP 中开发 Webhook 端点时,检索和解析 JSON 负载可能具有挑战性。本文解决了尝试在 JSON POST 场景中读取 HTTP 请求正文时遇到的常见问题。

第一步涉及验证请求标头是否正确指示有效负载中是否存在 JSON 数据。在这种情况下,请求标头显示一个等待解析的大型 JSON 对象。然而,直接通过 $_POST['json'] 或 $_POST 等方法访问该对象是不可行的,因为数据不是以数组的形式构造的。

一些开发人员求助于使用 file_get_contents('php:/ /input') 或 fopen('php://input', 'r') 获取请求正文。然而,单独使用这些方法是不够的;我们还需要 json_decode() 函数将原始 JSON 字符串转换为可访问的格式。

据发现,正确的方法包括组合这些步骤。解决方案如下:

$inputJSON = file_get_contents('php://input');
$input = json_decode($inputJSON, TRUE); //convert JSON into array
登录后复制

通过将 json_decode() 的第二个参数设置为 TRUE,JSON 被转换为关联数组。这样可以轻松访问和操作 PHP 脚本中的数据,满足解析 POST-ed JSON 对象并与之交互的要求。

以上是如何在 PHP 中正确解析 JSON POST 请求体?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板