第一个例子:

调用一个天气预告的接口

$data = 'theCityName=石家庄';
$cUrl = curl_init();
curl_setopt($cUrl, CURLOPT_URL, "http://www.webxml.com.cn/webservices/weatherwebservice.asmx/getWeatherbyCityName");
curl_setopt($cUrl, CURLOPT_HEADER, 0);
curl_setopt($cUrl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($cUrl, CURLOPT_POST, 1);
curl_setopt($cUrl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($cUrl, CURLOPT_POSTFIELDS, $data);
curl_setopt($cUrl, CURLOPT_HTTPHEADER, array("application/x-www-form-urlencoded; charset=utf-8", "Content-length: ".strlen($data))); $output = curl_exec($cUrl); if(!curl_errno($cUrl)) {
echo $output;
}else{
echo "Curl error: ".curl_error($cUrl);
}
//echo str_replace("百度", "^_^", $output); curl_close($cUrl);

第二个例子:

模拟登录一个站点并保存某个页面

$data = 'name=admin&password=123456';
$cUrl = curl_init();
curl_setopt($cUrl, CURLOPT_URL, "http://www.***.com/a/login.html");
curl_setopt($cUrl, CURLOPT_RETURNTRANSFER, 1);
date_default_timezone_set('PRC'); curl_setopt($cUrl, CURLOPT_COOKIESESSION, TRUE);
curl_setopt($cUrl, CURLOPT_COOKIEFILE, "cookiefile");
curl_setopt($cUrl, CURLOPT_COOKIEJAR, "cookiefile");
curl_setopt($cUrl, CURLOPT_COOKIE, session_name()."=".session_id());
curl_setopt($cUrl, CURLOPT_HEADER, 0);
curl_setopt($cUrl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($cUrl, CURLOPT_POST, 1);
//curl_setopt($cUrl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($cUrl, CURLOPT_POSTFIELDS, $data);
curl_setopt($cUrl, CURLOPT_HTTPHEADER, array("application/x-www-form-urlencoded; charset=utf-8", "Content-length: ".strlen($data)));
curl_exec($cUrl); curl_setopt($cUrl, CURLOPT_URL, "http://www.***.com/a/analysisIndex.html");//要保存的页面
curl_setopt($cUrl, CURLOPT_POST, 0);
curl_setopt($cUrl, CURLOPT_HTTPHEADER, array("Content-type: text/xml"));
$output = curl_exec($cUrl);
curl_close($cUrl);
echo $output;

php中使用curl两个例子的更多相关文章

  1. php中的curl使用入门教程和常见用法实例

    摘要: [目录] php中的curl使用入门教程和常见用法实例 一.curl的优势 二.curl的简单使用步骤 三.错误处理 四.获取curl请求的具体信息 五.使用curl发送post请求 六.文件 ...

  2. 在PHP中使用CURL,“撩”服务器只需几行——php curl详细解析和常见大坑

    在PHP中使用CURL,"撩"服务器只需几行--php curl详细解析和常见大坑 七夕啦,作为开发,妹子没得撩就"撩"下服务器吧,妹子有得撩的同学那就左拥妹子 ...

  3. PHP中使用CURL之php curl详细解析

    在正式讲怎么用之前啊,先提一句,你得先在你的PHP环境中安装和启用curl模块,具体方式我就不讲了,不同系统不同安装方式,可以google查一下,或者查阅PHP官方的文档,还挺简单的. 1. 拿来先试 ...

  4. 在PHP中使用CURL,“撩”服务器只需几行

    在PHP中使用CURL,“撩”服务器只需几行https://segmentfault.com/a/1190000006220620 七夕啦,作为开发,妹子没得撩就“撩”下服务器吧,妹子有得撩的同学那就 ...

  5. PHP中使用CURL之php curl详细解析和常见大坑

    这篇文章主要介绍了PHP中使用CURL之php curl详细解析和常见大坑 ,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 七夕啦,作为开发,妹子没得撩就“撩”下服务器吧,妹子有得撩的同学 ...

  6. php的CURL使用及例子

    使用PHP的cURL库可以简单和有效地去抓网页.你只需要运行一个脚本,然后分析一下你所抓取的网页,然后就可以以程序的方式得到你想要的数据了.无论是你想从从一个链接上取部分数据,或是取一个XML文件并把 ...

  7. 【跟着子迟品 underscore】JavaScript 中如何判断两个元素是否 "相同"

    Why underscore 最近开始看 underscore.js 源码,并将 underscore.js 源码解读 放在了我的 2016 计划中. 阅读一些著名框架类库的源码,就好像和一个个大师对 ...

  8. C#堆栈原理(我有两个例子测试你到底会不会)

    背景 上次写了一篇文章关于try finnally的一些疑问(被我用windows live覆盖了,草),后来经过大神们解释,我明白了在我理解了try.finnally运行原理后,还欠缺的就是关于值类 ...

  9. 解决Linux终端乱码的两则例子

    现象描述 我们先来说一下出现乱码的原因. 例子 先举个实际的例子,我们一般通过ssh远程到服务器上进行操作.当在终端上执行一些有输出的任务时,有可能会遇到乱码,特别是输出中有中文时. 比如,我登陆上o ...

随机推荐

  1. Maven 添加Jetty

        <build>         <finalName>springmvc</finalName>         <plugins>       ...

  2. 动画画圆的效果特效ios源码

    一款不错的支持动画画圆的效果特效源码,该效果实现了动画画圆,还可以扩展成画其他平面图形功能等,大家可以下载看看吧. //定义所需要画的图形  -(void)intiUIOfView  {      U ...

  3. Java的接口及实例

    一.定义 Java接口(Interface),是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为( ...

  4. Primefaces 中e.offset(...)问题的处理

    问题 在使用Primefaces构建的页面中,原来好好的页面莫名奇异的出现下拉框不能显示数据且点击没有反应的情况.后来通过firefox发现其JS抛出了一个e.offset(...)错误 解决方法 经 ...

  5. The Linux device model

    /sys和 /dev的疑问 1./dev 下放的是设备文件,是由应用层mknod创建的文件.假设底层驱动对mknod的设备号有相应的驱动,如open等函数.那么应用层open "/dev/* ...

  6. jsp 有哪些动作?作用分别是什么?

    答:JSP 共有以下 6 种基本动作jsp:include: 在页面被请求的时候引入一个文件.jsp:useBean: 寻找或者实例化一个 JavaBean.jsp:setProperty: 设置 J ...

  7. EasyUI的使用步骤

    (1) 将easyui-1.4.3中jquery.min.js\jquery.easyui.min.js复制到工程的script下 (2) 将themes复制到工程中 (3) 在页面中引入2个JS 2 ...

  8. Android应用开发基础篇(9)-----SharedPreferences

    链接地址:http://www.cnblogs.com/lknlfy/archive/2012/02/27/2370319.html 一.概述 对于SharedPreferences,我吧它理解为一种 ...

  9. Eclipse4.3正式版已发布

    Eclipse4.3正式版已发布,传送门http://www.eclipse.org/downloads/

  10. jmeter 通过ant集成到jenkins

    jmeter可以通过ant自动执行测试脚本,然后集成到jenkins上,并发送测试报告 1.下载安装ant 2.将jmeter安装包extras文件夹里ant-jemter-1.1.1.jar 复制到 ...