ClientURL库-curl_setopt()
这是一个出现得比较突兀的问题:
好好学习使用一下这个库:http://php.net/manual/zh/book.curl.php
curl_setopt函数:curl_setopt — 设置一个cURL传输选项。
说明:
bool curl_setopt ( resource $ch , int $option , mixed $value )
为 cURL 会话句柄设置选项。
参数:
ch
由 curl_init() 返回的 cURL 句柄。
option
需要设置的CURLOPT_XXX选项。
value
将设置在option选项上的值。
以下 option 参数的 value应该被设置成 bool 类型:
option的参数有很多很多,具体的看业务需求和需要使用的技术和功能。
具体可以参考:http://www.php.net/manual/zh/function.curl-setopt.php
我这里使用的就是:请求一个接口,获取到jsessionid,存储到本地的session中,然后再把这个值传输给另外的一个接口。
(1)获取jsessionid:根据option的设置可以获取到相应的内容。
(2)正则匹配出我们想要的结果。
(3)保存到session中。
(4)存储到cookie中。
(5)发送数据。
//header中加入cookie
curl_setopt($ch,CURLOPT_HTTPHEADER,array('Cache-Control: no-cache','Cookie:s_uid='.$s_uid));
//正则匹配
//U表示不要贪婪匹配
//i表示不区分大小写
preg_match_all('/Set-Cookie:stest=(.*);/iU', $string, $results);
只是给出一个大概,没有很详细的记录。具体详细的案例大家可以看看推荐的网址进行更深入的学习。:)
ClientURL库-curl_setopt()的更多相关文章
- PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
通过curl_setopt()函数可以方便快捷的抓取网页(采集很方便),curl_setopt 是php的一个扩展库 使用条件:需要在php.ini 中配置开启.(PHP 4 >= 4.0.2) ...
- PHP中的CURL函数库
PHP中的CURL函数库(Client URL Library Function) curl_close — 关闭一个curl会话curl_copy_handle — 拷贝一个curl连接资源的所有内 ...
- 用telnet和php的curl库测试http
一.telnet测试http telnet简介 Telnet协议是TCP/IP协议族的其中之一,是Internet远端登录服务的标准协议和主要方式,常用于网页服务器的远端控制,可供使用者在本地 ...
- php的cURL库介绍
cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP.FTP.TELNET等.很多小偷程序都是使用这个函数.最爽的是,PHP也支持 cURL 库.本文将介绍 cURL 的 ...
- curl学习之curl_setopt参数设置大总结
CURL函数库里最重要的函数是curl_setopt(),它可以通过设定CURL函数库定义的选项来定制HTTP请求使用方法:bool curl_setopt (int ch, string optio ...
- cURL函数库错误码说明之PHP curl_errno函数
背景概述:游戏接口是使用PHP cURL扩展进行请求操作.但是,被请求的服务器经常会无故的不响应或者超时.总之,就是请求之后收不到响应回来的数据.这时候可不能说对方API接口有问题,或者,服务器有故障 ...
- curl_setopt — 设置 cURL 传输选项
curl_setopt (PHP 4 >= 4.0.2, PHP 5, PHP 7) curl_setopt — 设置 cURL 传输选项 bool curl_setopt ( resource ...
- ZH奶酪:PHP的cURL库
原文链接:http://coolshell.cn/articles/664.html 参考链接:http://www.runoob.com/php/php-ref-curl.html 使用PHP的cU ...
- thikphp5.0 ip地址库 解决卡顿问题 curl_init
使用淘宝新浪的地址库非常的使用,但是调用有时候会出现很慢.会导致卡在当前网页. 要想不影响当前速度,因此要使用 curl_init功能. 项目案例:会员登陆日志 user_log 字段:id,user ...
随机推荐
- 【Python3之迭代器,生成器】
一.可迭代对象和迭代器 1.迭代的概念 上一次输出的结果为下一次输入的初始值,重复的过程称为迭代,每次重复即一次迭代,并且每次迭代的结果是下一次迭代的初始值 注:循环不是迭代 while True: ...
- Spring MVC (JDK8+Tomcat8)
1 Spring MVC概述 Spring MVC是Spring为表现层提供的基于MVC设计理念的优秀的web框架,是目前最主流的MVC框架之一. Spring3.0后全面超越Struts2,成为最优 ...
- How to get started with GIT and work with GIT Remote Repo
https://www.ntu.edu.sg/home/ehchua/programming/howto/Git_HowTo.html#zz-7. 1. Introduction GIT is a ...
- toString()方法细节
toString(),每一个非基本类型的对象都有一个toString()方法,当编译器需要一个Sting,而你只有一个对象时,该方法会自动调用. class WaterSource { private ...
- 在CentOS7上实现NFS共享
一.介绍 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,功能是让客户端通过网络访问不同主机上磁盘里的数据,主要用在类Unix系统上实现文件共享 ...
- Maven pom.xml简单归结
Maven pom.xml文件解释 请确保有相关的maven知识,包括Maven安装.Maven settings.xml解读.本文对POM的一些属性作一些摘录,详细的配置可查看此篇转载文章" ...
- webrtc底层一对一连接过程探索(二)
一.连接过程继续解读-----fun32解读 1.1 fun32.02 "undefined" != typeof cordova && (N = !0, D = ...
- [Lucas定理]【学习笔记】
Lucas定理 [原文]2017-02-14 [update]2017-03-28 Lucas定理 计算组合数取模,适用于n很大p较小的时候,可以将计算简化到小于p $ \binom{n}{m} \m ...
- Azure ARM (21) Azure订阅的两种管理模式
<Windows Azure Platform 系列文章目录> 熟悉Azure平台的读者都知道,Microsoft Azure服务管理,分为三个层次: 1.企业服务合同 (Enterpri ...
- php header解决跨域问题
header('Access-Control-Allow-Credentials:true'); header('Access-Control-Allow-Origin:http://wdjkj.co ...