• 技术文章 >后端开发 >PHP问题

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

    藏色散人藏色散人2021-08-26 10:32:44原创216
    在上一篇文章《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中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:PHP POST JSON
    上一篇:php程序如何遍历json数据 下一篇:PHP中如何使用cURL获取JSON数据并解码
    线上培训班

    相关文章推荐

    • php怎么获取数据转json数据格式• php将数组转换为json格式• php json如何使得中文不编码• 通过PHP快速解码指定JSON字符串• php程序如何遍历json数据

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网