PHP函数分享之curl方式取得数据、模拟登陆、POST数据

废话不多说直接上代码




复制代码 代码如下:



/********************** curl 系列 ***********************/


//直接通过curl方式取得数据(包含POST、HEADER等)


/*


 * $url: 如果非数组,则为http;如是数组,则为https


 * $header: 头文件


 * $post: post方式提交 array形式


 * $cookies: 0默认无cookie,1为设置,2为获取


 */


public function curl_allinfo($urls, $header = FALSE, $post = FALSE, $cookies = 0) {


    $url = is_array($urls) ? $urls[‘0’] : $urls;


    $ch = curl_init();


    curl_setopt($ch, CURLOPT_URL, $url);


    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);


    //带header方式提交
    if($header != FALSE){
        curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
    }


    //post提交方式
    if($post != FALSE){
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
    }


    if($cookies == 1){
        curl_setopt($ch, CURLOPT_COOKIEJAR, “cookiefile”);
    }else if($cookies == 2){
        curl_setopt($ch, CURLOPT_COOKIEFILE, “cookiefile”);
    }


    if(is_array($urls)){
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    }



SyntaxHighlighter.highlight();