php 接收及发送POST/GET请求 接收Xml格式数据POST请求及发送
2018-06-01 11:44
621 查看
补充三点说明:
1.Get请求数据根据索引关键字直接从全局变量$_GET中获取(无需再调用urldecode解码)
$_GET 数组 存储Get请求字符串(用&划分字符串为数组,数组元素的形式为:a=b)
2.POST请求字符串形式的数据同样可以根据索引关键字从$_POST中获取
$_POST 数组 存储Post请求字符串(用&划分字符串为数组,数组元素的形式为:a=b)
3.POST请求Xml形式数据存储在$GLOBALS['HTTP_RAW_POST_DATA']中
PHP Post/Get 接收和发送xml格式数据:
1.接收Post Xml数据:
if(array_key_exists('HTTP_RAW_POST_DATA',$GLOBALS) == true){
$post_data = $GLOBALS['HTTP_RAW_POST_DATA'];//php接收xml文件的唯一方式
$post_obj = SimpleXml_load_String($post_data,'SimpleXMLElement',LIBXML_NOCDATA);//加载xml
$username = (string)$post_obj->username;//直接获取xml中username的值
$password = (string)$post_obj->password;//直接获取xml中password的值
}
2.发送Post/Get数据
$post_url = "http://192.168.100.250:8080/hook/smspay/***.php";//目的url$post_str = "<xml><username>James</username><password>1234</password></xml>";
$timeout = 10;//连接/响应超时设置,单位秒s
$ch = curl_init();//初始化curl
$header[] = "Content-type: text/xml";//设置http报文头text/xml
curl_setopt($ch, CURLOPT_URL, $post_url);//设置目的URL
curl_setopt($ch, CURLOPT_POST, 1);//1:post方式 0:get方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_str);//设置将要发送的数据
curl_setopt($ch, CURLOPT_HEADER, 0);//1:显示 0:不显示
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);//要求结果为字符串且输出到屏幕上
curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);//响应超时
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);//连接超时
$rtn = curl_exec($ch);//执行发送
//var_dump(curl_error($ch));//打印发送出错原因
curl_close($ch);//关闭curl 阅读更多
相关文章推荐
- 初涉Ajax,以post或get方法发送数据,以json或xml形式接收服务器返回的请求
- PHP 使用curl库来发送GET,POST请求,处理json格式数据
- AngularJs的$http发送POST请求,php无法接收Post的数据解决方案
- PHP中接收send/POST/GET发送的数据
- PHP发送POST请求的三种方式 分别使用curl file_get_content fsocket 来实现post提交数据
- weiphp2.0 controller.class.php里面add方法接收不到post请求发送的数据
- axios的post请求发送数据,后端接收不到
- express 4.x req.query(get方式) req.body(post方式) 接收浏览器发送过来的数据
- 使用JavaScript的XMLHttpRequest发送POST、GET请求以及接收返回值
- Ajax发送GET、POST请求和响应XML数据案例
- php 利用socket发送GET,POST请求
- Android使用HttpClient以Post、Get请求服务器发送数据的方式(普通和json)
- httpClient使用,1 发送post请求 2 发送get请求取得接口中的数据
- 【荐】怎么用PHP发送HTTP请求(POST请求、GET请求)?
- php使用fsockopen函数发送post,get请求获取网页内容的方法
- php发送get、post请求的几种方法
- php发送get、post请求的几种方法
- 怎么用PHP发送HTTP请求(POST请求、GET请求)?
- Asp.net XMLHTTP 基类 (GET,Post发送和接收数据)
- php发送get、post请求的几种方法