PHP发送POST请求的常用方式

九月 17, 2019 | views
Comments 0

在PHP开发的过程中经常需要发送POST请求,POST相比GET要安全很多,而且传输的数据量也较大。下面PHP程序员雷雪松就带大家一起总结下PHP发送POST请求的几种常用方式,分别使用curl、file_get_content来实现POST请求和传递参数。

1、curl实现PHP POST请求和传递参数。

  1. $data=array("username"=>"raykaeso","name"=>"雷雪松");//post参数 
  2. $url="http://www.phpfensi.com"
  3. $ch = curl_init();//创建连接 
  4. curl_setopt($ch, CURLOPT_URL, $url); 
  5. curl_setopt($ch, CURLOPT_POST, 1); 
  6. curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));//将数组转换为URL请求字符串,否则有些时候可能服务端接收不到参数 
  7. curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1); //接收服务端范围的html代码而不是直接浏览器输出 
  8. curl_setopt($ch, CURLOPT_HEADER, false); 
  9. $responds = curl_exec($ch);//接受响应 
  10. curl_close($ch);//关闭连接 

2、file_get_content实现PHP POST请求和传递参数

  1. $data=array("username"=>"raykaeso","name"=>"雷雪松");//post参数 
  2. $url="http://www.phpfensi.com"
  3. $content = http_build_query($data); 
  4. $length = strlen($content); 
  5. $options = array
  6. 'http' => array
  7. 'method' => 'POST'
  8. 'header' => 
  9. "Content-type: application/x-www-form-urlencoded\r\n" . 
  10. "Content-length: $length \r\n"
  11. 'content' => $content 
  12. ); 
  13. file_get_contents($url, false, stream_context_create($options)); 



zend