How to post data using file_get_contents in PHP ?
The file_get_contents() function in PHP is used to read the contents of a file and make HTTP requests using GET and get HTTP responses using POST methods. The HTTP POST request can be made using the $context parameter of the file_get_contents() function, which posts the specified data to the URL specified using the $path parameter. The following syntax is used to POST requests to the required path:
string file_get_contents( $path, $include_path, $context, $offset, $max_length )
- $path: A required parameter that specifies the URL to post data.
- $include_path: It is an optional parameter that specifies if we wish to search for files in the included path while reading.
- $context: It specifies the data in the form of a JSON stream to be posted to the URL.
- $start: It is an optional parameter that is used to specify the starting point in the file for reading.
- $max_length: It is an optional parameter that is used to specify the number of bytes to be read.
Therefore, a content stream can be created and then, injected into the respective path. The data can contain information in the form of key-value pairs. The context stream is created by the stream_context_create($options) function with the parameters supplied in the $options argument. The parameters contain the ‘method’ consisting of either GET or POST and ‘content’ parameter containing the data that has to appear on the URL.
The code snippet indicates a sample program to post data to the URL using the file_get_contents() method. We create a folder by the name Demo which contains two files “index.php” and “demo1.php” and run it using the MAMP server.
The following code is included in ‘index.php’.
To view the items in the content, the following code is written in ‘demo1.php’:
The code prints the following output on the specified URL: