欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

如何使用PHP接收POST的JSON数据

程序员文章站 2022-03-03 18:24:49
...
在上一篇文章《php程序如何遍历json数据》中给大家介绍了PHP怎么遍历json数据,那么本文将继续介绍PHP json相关内容,希望大家继续往下看~

本文讲解的内容则是PHP接收POST的JSON数据的方法。

如果大家阅读过上一篇文章,想必对json有一定的认识,这里就不多介绍了。

首先我给大家介绍三个重要的知识点:

1、php://input:这是一个只读流,允许我们从请求正文中读取原始数据。无论内容类型如何,它都会在请求的 HTTP 标头之后返回所有原始数据。

2、file_get_contents() 函数:PHP 中的此函数用于将文件读入字符串。

3、json_decode() 函数:该函数接受一个 JSON 字符串并将其转换为 PHP 变量,该变量可以是数组或对象。

想必大家都知道我们可以使用$_POST[]全局变量在 PHP 脚本中接收所有发布数据。但是当我们想要接收 JSON 字符串作为发布数据时,就会显示失败。那么想要接收 JSON 字符串,我们就可以使用“php://input”和file_get_contents()函数来帮助我们将 JSON 数据作为文件接收并将其读入字符串。

下面我们通过具体示例来介绍:

使用json_decode()函数对 JSON 字符串进行解码。

// 从请求中获取原始数据
$json = file_get_contents('php://input'); 
// 将其转换为 PHP 对象
$data = json_decode($json);

第一种示例:

<?php
$json = '["PHP", "HTML", "javascript"]';

$data = json_decode($json);

echo $data[0];

输出结果:

PHP

第二种示例:

<?php
$json = '{
    "title": "PHP",
    "site": "PHP中文网"
}';

$data = json_decode($json);

echo $data->title;
echo "<br>";

echo $data->site;

输出:

PHP
PHP中文网

PHP中文网平台有非常多的视频教学资源,欢迎大家学习《PHP视频教程》!

以上就是如何使用PHP接收POST的JSON数据的详细内容,更多请关注其它相关文章!

相关标签: PHP POST JSON