CanPHP开发手册--文件下载与数据采集
说明:
- 类文件:CanPHP/lib/Http.class.php
- 默认会自动加载,不需要手动include
方法:download($filename, $showname='',$expire=1800)
说明:用于下载文件
参数:
- $filename,包含路径的文件名
- $showname,下载显示的文件名,需要自行转成gbk编码,如果带空格,需要自行替换成其他字符
- $expire,下载内容浏览器缓存时间
使用方法:
$showname='最新资料.zip'; $showname=auto_charset($showname,'utf-8','gbk');//utf-8编码转成gbk编码 Http::download('upload/123.zip',$showname);
方法:doGet($url,$timeout=5,$header='')
说明:采用get方法请求页面,会自动使用最快的访问方式,获取数据
参数:
- $url,网址
- $timeout,超时时间
- $header,http请求头,用于发送cookie等信息
使用方法:
echo Http::doGet('http://www.baidu.com');
方法:doPost($url,$data,$timeout=5,$header='')
说明:采用post方法请求页面,会自动使用最快的访问方式,获取数据
参数:
- $url,网址
- $data,待发送的数据,类型数组。
- $timeout,超时时间
- $header,http请求头,用于发送cookie等信息
使用方法:
$url='http://www.canphp.com/test.php'; $data['name']='单骑'; $data['email']='admin@canphp.com'; Http::doPost($url,$data,10); test.php页面接收数据 $_POST['name']; $_POST['email'];
方法:setWay($way)
说明:手动设置doGet()和doPost()访问方式
参数:
- $way:参数可以1或2或3
- 参数1时:采用curl
- 参数2时:采用socket
- 参数3时:采用file_get_contents()函数模拟
- 若不设置访问方式,会自动获取当前环境的支持方式,选择最佳的方式去访问,优先度curl > socket > file_get_contents
使用方法:
Http::setWay(3); echo Http::doGet('http://www.baidu.com');//将采用file_get_contents()方式获取内容