Open In App

How to receive JSON POST with PHP ?

Last Updated : 06 Dec, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we will see how to retrieve the JSON POST with PHP, & will also see their implementation through the examples. First, we will look for the below 3 features:

  • php://input: This is a read-only stream that allows us to read raw data from the request body. It returns all the raw data after the HTTP headers of the request, regardless of the content type.
  • file_get_contents() function: This function in PHP is used to read a file into a string.
  • json_decode() function: This function takes a JSON string and converts it into a PHP variable that may be an array or an object.

It is known that all of the post data can be received in a PHP script using the $_POST[] global variable. But this fails in the case when we want to receive JSON string as post data. To receive JSON string we can use the “php://input” along with the function file_get_contents() which helps us receive JSON data as a file and read it into a string. Later, we can use the json_decode() function to decode the JSON string.

Handling JSON POST requests:

// Takes raw data from the request
$json = file_get_contents('php://input');

// Converts it into a PHP object
$data = json_decode($json);

Example 1: This example uses the json_decode() function that is used to decode a JSON string.

PHP




<?php
  $json = '["geeks", "for", "geeks"]';
  $data = json_decode($json);
  echo $data[0];
?>


Output: 

geeks

 

Example 2: This example uses the json_decode() function that is used to decode a JSON string.

PHP




<?php
  $json = '{
      "title": "PHP",
      "site": "GeeksforGeeks"
  }';
  $data = json_decode($json);
  echo $data->title;
  echo "\n";
  echo $data->site;
?>


Output: 

PHP
GeeksforGeeks

 

PHP is a server-side scripting language designed specifically for web development. You can learn PHP from the ground up by following this PHP Tutorial and PHP Examples.



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads