我需要编写一个PHP页面,它接受通过POST请求发送的XML文档,如下所示:
POST /mypage.php HTTP/1.1
Host: myhost.com
Content-Type: application/xml
Content-Length: ...
<?xml version="1.0" encoding="utf-8"?>
<data>
...
</data>
Run Code Online (Sandbox Code Playgroud)
这不是某些HTML表单中的数据,只是一个普通的XML文档.
如何在PHP代码中访问此XML?
phi*_*hag 38
阅读php://input
.例如,您可以使用:
$rawdata = file_get_contents('php://input');
Run Code Online (Sandbox Code Playgroud)
要么
$rootNode = simplexml_load_file('php://input');
Run Code Online (Sandbox Code Playgroud)
替代方案,使用$HTTP_RAW_POST_DATA
也可以 - 但速度较慢,需要PHP配置always_populate_raw_post_data
.