输入banner图图片脚本导航/分类

php中利用curl进行post请求示例

工作中需要使用curl的POST请求来向第三方服务器获取数据, 下面是php版本的实现代码,以作备忘.

"find_wonder");

    $ch = curl_init();

    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_AUTOREFERER, 1);
    curl_setopt($ch, CURLOPT_MAXREDIRS, 4);
    curl_setopt($ch, CURLOPT_ENCODING, ""); //必须解压缩防止乱码
    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 5.1; zh-CN) AppleWebKit/535.12 (KHTML, like Gecko) Chrome/22.0.1229.79 Safari/535.12");
    curl_setopt($ch, CURLOPT_TIMEOUT, 15);

    $output = curl_exec($ch);
    curl_close($ch);

    print_r($output);
?>

这里需要注意的地方是, hao.qq.com返回的数据是gzip和chunk发送的, 必须启用curl的自动解压缩功能来得到解压后的数据, 否则会导致乱码.

将上面的源码文件记为curl_post.php, 在命令行执行

php curl_post.php

下面是获取的结果示例


上面的实例是,向hao.qq.com发送POST请求来获取指定的代码片段, 它是div和script代码片段的混合体, 会生成类似如下的页面效果


以上就介绍了php中利用curl进行post请求示例,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。