首页
开发手册
应用中心
工具
用户中心
Ease Template Curl 各种使用方法教程
中文简体
中文简体
English
上一篇
下一篇
CURL 为网络交互提供了非常方便的使用方式,每个功能都有细小差别,切记不是大家来找茬,请用心理解。 我们设定$url为本地的开发项目 ```php $url = 'http://localhsot/Foundphp'; ```
#### 1. http GET获取数据 支持网页、照片、文件等。 ```php echo $tpl->curl($url.'/curl_result.php?t=get'); ```
#### 2. https GET获取数据: 超文本传输安全协议支持网页、照片、文件等。我们下载百度照片保存到本地并且显示 ```php $img = $tpl->curl('https://foundphp.com/plugin/view/default/images/logo_found.png'); $tpl->writer('baidu.png',$img); echo '
'; ``` 显示效果: ![](https://foundphp.com/plugin/view/default/images/logo_found.png)
#### 3. https 证书访问: 部分网站需要认证证书访问 ```php $tpl->curl_pem = 'cacert.pem'; //证书文件 echo $tpl->curl('https://www.baidu.com/'); //设置需要访问的https网站 ```
#### 4. POST: 无刷新提交数据支持多维数组。 ```php $post_data = array( 'name'=>'tonsen', 'info'=>array('gender'=>1,'height'=>178) ); echo $tpl->curl($url.'/curl_result.php?t=post',$post_data); ```
#### 5. Cookie: 传递cookie到网站上实现用户登录。 ```php $post_data = array( 'name'=>'tonsen', 'id' =>1983 ); echo $tpl->curl($url.'/curl_result.php'); ```
#### 6. 自定义浏览器: 模拟浏览器的标识也可以加入自己定义标识 ```php $tpl->curl_agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) FoundPHP/2.x'; echo $tpl->curl($url.'/curl_result.php'); ```
#### 6. 自定头信息: 部分网站会利用自定义头实现登录或验证,头标识都采用大写。 我们提交US与PWD,在服务端通过_SERVER接收数据 ```php $tpl->curl_header = array( 'US: tonsen', 'PWD: 1231123' ); $post_data = array( 'usernamne'=>'tonsen' ); echo $tpl->curl($url.'/curl_result.php',$post_data); ``` 结果: $_SERVER['HTTP_US']与 $_SERVER['HTTP_PWD']结果为 ```php http接收: tonsen 123123 post接收: tonsen ```
#### 7. 发送json数据: 只需要在post_data后加入1的参数即标识JSON数据 ```php $post_data = array( 'usernamne'=>'tonsen' ); echo $tpl->curl($url.'/curl_result.php',$post_data, 1 ); ```
#### 8. HTTP_RAW_POST_DATA: 模拟HTTP_RAW_POST_DATA提交xml到服务端验证数据,这里的post_data只要字符串则自动适应,数组则会判定为post。 ```php $post_data = 'FoundPHP is Good!'; echo $tpl->curl($url.'/curl_result.php',$post_data); ```
#### 9. 跳转自适应: 访问页面有跳转系统自动判定是否要继续访问跳转页。 我们访问t为go的区域,瞬间会跳转到t为301的区域并显示输出内容。 ```php echo $tpl->curl($url.'/curl_result.php?t=go'); ```
#### 10. 上传单文件: 无刷新上传单一文件建议设定set_time_limit(90),如果文件超大请采用更长时间或其他方案,post_data数组只支持一维数组。 ```php $tpl->curl_file = array( 'name'=>'attach', 'file'=>'baidu.png' ); $post_data = array( 'name'=>'tonsen', 'group'=>'FoundPHP' ); echo $tpl->curl($url.'/curl_result.php?t=file',$post_data); ```