后端开发|php教程
POST,CURL,php
后端开发-php教程
CURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。最爽的是,PHP也支持 CURL 库。使用PHP的CURL 库可以简单和有效地去抓网页。你只需要运行一个脚本,然后分析一下你所抓取的网页,然后就可以以程序的方式得到你想要的数据了。无论是你想从从一个链接上取部分数据,或是取一个XML文件并把其导入数据库,那怕就是简单的获取网页内容,CURL 是一个功能强大的PHP库。
app在线自建平台源码,vscode终端色,ubuntu在哪里查看内存,Tomcat内存存储,sqlite所有查询表,js调用摄像头拍照插件,前端不需要框架,爬虫和js逆向,ftp php 上传,SEO优化课程体系,化妆品网站模板,网页调用腾讯视频代码,织梦帮免费模板,做的登录注册页面,jsp学生管理系统代码,商城 小程序 源码lzw
PHP建立CURL请求的基本步骤
javashop 3.0 源码,ubuntu怎么安装终端,适合爬虫的资源,php开发php培训课程,营销seo报价lzw
①:初始化
金融期货源码,vscode做前端好用吗,ubuntu 端口查询,获取tomcat路径乱码,爬虫相关软件,php取前几个字符,seo主管的日常工作,带会员功能的网站,用户登录界面模板 htmllzw
curl_init()
②:设置属性
curl_setopt() //有一长串CURL 参数可供设置,它们能指定URL请求的各个细节。
③:执行并获取结果
curl_exec()
④:释放句柄
curl_close()
CURL实现GET和POST
①:GET方式实现
//初始化$curl = curl_init();//设置抓取的urlcurl_setopt($curl, CURLOPT_URL, \);//设置头文件的信息作为数据流输出curl_setopt($curl, CURLOPT_HEADER, 1);//设置获取的信息以文件流的形式返回,而不是直接输出。curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//执行命令$data = curl_exec($curl);//关闭URL请求curl_close($curl);//显示获得的数据print_r($data);
②:POST方式实现
//初始化$curl = curl_init();//设置抓取的urlcurl_setopt($curl, CURLOPT_URL, \);//设置头文件的信息作为数据流输出curl_setopt($curl, CURLOPT_HEADER, 1);//设置获取的信息以文件流的形式返回,而不是直接输出。curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//设置post方式提交curl_setopt($curl, CURLOPT_POST, 1);//设置post数据$post_data = array( "username" => "coder", "password" => "12345");curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);/执行命令$data = curl_exec($curl);//关闭URL请求curl_close($curl);//显示获得的数据print_r($data);
③:如果获得的数据时json格式的,使用json_decode函数解释成数组。
$output_array = json_decode($data,true); //如果第二个参数为true,就转为数组的形式。如果不填就为对象的形式
如果使用json_decode($data)解析的话,将会得到object类型的数据。
封装的一个函数
//参数1:访问的URL,参数2:post数据(不填则为GET),参数3:提交的$cookies,参数4:是否返回$cookiesfunction curl_request($url,$post=\,$cookie=\, $returnCookie=0){ $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_USERAGENT, Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($curl, CURLOPT_AUTOREFERER, 1); curl_setopt($curl, CURLOPT_REFERER, "http://XXX"); if($post) { curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post)); } if($cookie) { curl_setopt($curl, CURLOPT_COOKIE, $cookie); } curl_setopt($curl, CURLOPT_HEADER, $returnCookie); curl_setopt($curl, CURLOPT_TIMEOUT, 10); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $data = curl_exec($curl); if (curl_errno($curl)) { return curl_error($curl); } curl_close($curl); if($returnCookie){ list($header, $body) = explode("\r\n\r\n", $data, 2); preg_match_all("/Set\-Cookie:([^;]*);/", $header, $matches); $info[cookie] = substr($matches[1][0], 1); $info[content] = $body; return $info; }else{ return $data; }}
这俩个函数虽然不难,但是还是值得学习一下的。因为在做接口或者调用的接口的时候,必定会用到这俩个函数。
相关文章推荐:
php如何爬取天猫和淘宝商品数据