PHP中使用cURL实现Get和Post请求的方法

<p>1.cURL介绍</p><p>  cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。最爽的是,PHP也支持 cURL 库。本文将介绍 cURL 的一些高级特性,以及在PHP中如何运用它。</p><p>2.基本结构</p><p>  在学习更为复杂的功能之前,先来看一下在PHP中建立cURL请求的基本步骤:</p><p>  (1)初始化</p><pre class="brush:php;toolbar:false">curl_init()</pre><p>    </p><p>  (2)设置变量</p><pre class="brush:php;toolbar:false">curl_setopt()。</pre><p>    </p><p>最为重要,一切玄妙均在此。有一长串cURL参数可供设置,它们能指定URL请求的各个细节。要一次性全部看完并理解可能比较困难,所以今天我们只试一下那些更常用也更有用的选项。</p><p>  (3)执行并获取结果</p><pre class="brush:php;toolbar:false">curl_exec()</pre><p>    </p><p>  (4)释放cURL句柄</p><pre class="brush:php;toolbar:false">curl_close()</pre><p>    </p><p>3.cURL实现Get和Post</p><p>3.1 Get方式实现</p><pre class="brush:php;toolbar:false">  //初始化   $ch=curl_init();   //设置选项,包括URL   curl_setopt($ch,CURLOPT_URL,&quot;//www.jb51.net&quot;);   curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);   curl_setopt($ch,CURLOPT_HEADER,0);   //执行并获取HTML文档内容   $output=curl_exec($ch);   //释放curl句柄   curl_close($ch);   //打印获得的数据   print_r($output);</pre><p>3.2 Post方式实现</p><pre class="brush:php;toolbar:false">   $url=&quot;http://localhost/web_services.php&quot;;   $post_data=array(&quot;username&quot;=&gt;&quot;bob&quot;,&quot;key&quot;=&gt;&quot;12345&quot;);   $ch=curl_init();   curl_setopt($ch,CURLOPT_URL,$url);   curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);   //post数据   curl_setopt($ch,CURLOPT_POST,1);   //post的变量   curl_setopt($ch,CURLOPT_POSTFIELDS,$post_data);   $output=curl_exec($ch);   curl_close($ch);   //打印获得的数据   print_r($output);</pre><p>  </p><p>  以上方式获取到的数据是json格式的,使用json_decode函数解释成数组。</p><p>  $output_array = json_decode($output,true);</p><p>  如果使用json_decode($output)解析的话,将会得到object类型的数据。</p>
RangeTime:0.007191s
RangeMem:206.07 KB
返回顶部 留言