回答php接收不到xml数据怎么办

 所属分类:php教程

 浏览:155次-  评论: 0次-  更新时间:2022-11-07
描述:更多教程资料进入php教程获得。 php接收不到xml数据的解决办法:1、使用“file_get_contents('php://input');”方法接收xml数据;2...
更多教程资料进入php教程获得。

php接收不到xml数据的解决办法:1、使用“file_get_contents('php://input');”方法接收xml数据;2、使用“simplexml_load_string($GLOBALS['HTTP_RAW_POST_DATA'], 'SimpleXMLElement', LIBXML_NOCDATA);”方法接收xml数据即可。

php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用

本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。

php接收不到xml数据怎么办?

关于php接受xml的一些问题,simplexml_load_string收不到数据

接受xml数据一般使用这两种方法

方法1:

file_get_contents('php://input');
登录后复制

方法2:

simplexml_load_string($GLOBALS['HTTP_RAW_POST_DATA'], 'SimpleXMLElement', LIBXML_NOCDATA);
登录后复制

建议使用方法1,方法2在PHP版本高的已经丢弃

------------------------好看的分割线------------------

前言:公司的项目有些久远,都是用的方法2。

问题:我在使用curl去请求其他人写的接口的时候,方法2接收不到,方法1可以。

解决办法:经过测试,需要设置的cur参数中的Content-Type为text/xml

代码:curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-Type:text/xml; charset=utf-8"));

PHP的cur参数中的Content-Type默认值是application/x-www-form-urlencoded,tmd!使用方法2会判断http请求头的Content-Type

推荐学习:《PHP视频教程》

以上就是php接收不到xml数据怎么办的详细内容,更多请关注zzsucai.com其它相关文章!

 标签: xml,php,
积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!