手记

在PHP中使用CURL实现GET和POST请求的方法


1.CURL介绍CURL是一个利用URL语法规定来传输文件和数据的工具.支持很多协议,如HTTP、FTP、TELNET等。幸运的是PHP也支持CURL库。本文将介绍curl的一些高级特性,以及在PHP中如何运用它。2.基本结构在学习更为复杂的功能之前,先来看一下在PHP中建立CURL请求的基本步骤:(1)初始化 curl_init()(2)设置变量 curl_setopt() //最为重要,一切玄妙均在此。有一长串curl参数可供设置,它们能指定URL请求的各个细节。要一次性全部看完并理解可能比较困难,所以今天我们只试一下那些更常用也更有用的选项。(3)执行并获取结果 curl_exec()(4)释放curl句柄 curl_close() 3.CURL实现Get和Post

1)、Get方式实现    //初始化    $ch = curl_init();    //设置选项,包括URL    curl_setopt($ch, curlOPT_URL, "http://www.xxx.com");    curl_setopt($ch, curlOPT_RETURNTRANSFER, 1);    curl_setopt($ch, curlOPT_HEADER, 0);    //执行并获取HTML文档内容    $output = curl_exec($ch);    //释放curl句柄    curl_close($ch);    //打印获得的数据    print_r($output);2)、Post方式实现    $url "http://localhost/web_services.php";    $post_data array ("username" => "uname","key" => "123456");    $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);以上方式获取到的数据是json格式的,使用json_decode函数解释成数组。    $output_array = json_decode($output,true);如果使用json_decode($output)解析的话,将会得到object类型的数据。

$url 'http://commoncgi.dev.wepiao.com/common/default/decrypt';$post_data array ("channelId" => "501","str"=>$token);private function genurl($url,$post_data){    $ch = curl_init ();       curl_setopt ( $ch, CURLOPT_URL, $url );        curl_setopt ( $ch, CURLOPT_POST, 1 );        curl_setopt ( $ch, CURLOPT_HEADER, 0 );        curl_setopt ( $ch, CURLOPT_RETURNTRANSFER , 1 );        curl_setopt( $ch, CURLOPT_TIMEOUT,10 );        curl_setopt ( $ch, CURLOPT_POSTFIELDS , $post_data );        $return = curl_exec ( $ch );        curl_close ( $ch );        return $return;}


0人推荐
随时随地看视频
慕课网APP