How to access POST data in PHP?

后端 未结 7 1065
囚心锁ツ
囚心锁ツ 2020-12-13 19:43

I need to write a PHP page which would accept an XML document sent over a POST request like this:

POST /mypage.php HTTP/1.1
Host: myhost.com
Content-Type: ap         


        
相关标签:
7条回答
  • 2020-12-13 20:23

    Read from php://input. For example, you could use:

    $rawdata = file_get_contents('php://input');
    

    or

    $rootNode = simplexml_load_file('php://input');
    

    The alternative, using $HTTP_RAW_POST_DATA, works, too - but it's slower and needs the PHP configuration always_populate_raw_post_data.

    0 讨论(0)
  • 2020-12-13 20:28

    You probably want to use the PHP input. Something like

    $postText = trim(file_get_contents('php://input'));
    
    0 讨论(0)
  • 2020-12-13 20:31

    If you use print_r($_POST); you will be able to see what you got. Unless i'm missing something... Edit: nvm, totaly forgot about Raw Data :/

    0 讨论(0)
  • 2020-12-13 20:32

    Any of these would work:

    $HTTP_RAW_POST_DATA variable or the php://input stream.
    

    However, for the

    $HTTP_RAW_POST_DATA variable
    

    to work, you might need to change .ini setting in your configuration file

    0 讨论(0)
  • 2020-12-13 20:37

    Try the $HTTP_RAW_POST_DATA variable or the php://input stream.

    0 讨论(0)
  • 2020-12-13 20:37

    http://us.php.net/manual/en/reserved.variables.httprawpostdata.php

    $HTTP_RAW_POST_DATA should be available assuming the content-type of the request was not multipart/form-data

    0 讨论(0)
提交回复
热议问题