How can I use PHP to take raw POST data and save to a file?

18,759

All that really needs to be done is:

file_put_contents("outputfile.txt", file_get_contents("php://input"));

Apache will deal with managing the incoming requests.

Share:
18,759
jskidd3
Author by

jskidd3

Web developer from Southampton, United Kingdom.

Updated on June 06, 2022

Comments

  • jskidd3
    jskidd3 almost 2 years

    I'm working with an interface standard for exchanging information about the planned, current or projected performance of real-time public transport operations between different computer systems. This standard is called SIRI.

    To cut a long story short, I've made a subscription with a service that sends me XML data through this interface every 30 seconds. From what I've highlighted in the red box below, it states that HTTP is used to send this data which is what I would have preferred.

    I need to create a PHP file that can listen for this HTTP data and then save it to a file (overwriting the previous file every 30 seconds).

    I've done some preliminary research into how I can go about doing this and I've done a little reading on:

    $HTTP_RAW_POST_DATA
    

    and

    php://input
    

    How can I come up with a PHP solution for doing this with one of these methods or a better one?

    Enter image description here