PHP Request工具类
http
php
request
使用
工具
進行
利用PHP进行HTTP请求是很常见的事情了,大家都知道用CURL来进行操作,但是CURL函数使用起来配置是很多的,很多人往往只有用到一小部分常用选项,这里我做了一个封装 主要功能 POST,GET COOKIE支持 URLENCODE支持(针对GET请求) 由于是静态方法,直接::调用即
利用PHP进行HTTP请求是很常见的事情了,大家都知道用CURL来进行操作,但是CURL函数使用起来配置是很多的,很多人往往只有用到一小部分常用选项,这里我做了一个封装
主要功能
POST,GET
COOKIE 支持
URLENCODE 支持(针对GET请求)
由于是静态方法,直接 :: 调用即可
<?php /** * @version 1.0 * @date 2014-08-11 * @author 十七号 <xialeistudio@gmail.com> * @license MIT * Class Request 网络工具类 */ class Request { /** * HTTP GET 请求 * @param string $url 请求地址 * @param array $data 请求数据 * @param null $cookie COOKIE * @param null $cookiefile COOKIE 请求所用的COOKIE文件位置 * @param null $cookiesavepath 请求完成的COOKIE保存位置 * @param bool $encode 是否对请求参数进行 urlencode 处理 * @return mixed * @throws Exception */ public static function get($url, $data = array(), $cookie = null, $cookiefile = null,$cookiesavepath = null, $encode = true) { //初始化句柄 $ch = curl_init(); //处理GET参数 if(count($data)>0){ $query = $encode?http_build_query($data):urldecode(http_build_query($data)); curl_setopt($ch, CURLOPT_URL, $url . '?' . $query); }else{ curl_setopt($ch, CURLOPT_URL, $url); } curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36'); //设置cookie if (isset($cookie)) curl_setopt($ch, CURLOPT_COOKIE, $cookie); //设置cookie请求文件 if (isset($cookiefile)){ if(!is_file($cookiefile)) throw new Exception('Cookie文件不存在'); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiefile); } //设置cookie保存路径 if(isset($cookiesavepath)) curl_setopt($ch,CURLOPT_COOKIEJAR,$cookiesavepath); //执行请求 $resp = curl_exec($ch); //关闭句柄,释放资源 curl_close($ch); return $resp; } /** * HTTP POST 请求 * @param string $url 请求地址 * @param array $data 请求数据 * @param null $cookie 请求COOKIE * @param null $cookiefile 请求时cookie文件位置 * @param null $cookiesavepath 请求完成的COOKIE保存位置 * @return string * @throws Exception */ public static function post($url, $data = array(), $cookie = null, $cookiefile = null,$cookiesavepath = null) { //初始化请求句柄 $ch = curl_init(); //参数设置 curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch,CURLOPT_POST,1); curl_setopt($ch,CURLOPT_POSTFIELDS,$data); curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36'); //cookie设置 if (isset($cookie)) curl_setopt($ch, CURLOPT_COOKIE, $cookie); //请求cookie设置 if (isset($cookiefile)){ if(!is_file($cookiefile)) throw new Exception('Cookie文件不存在'); curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiefile); } //设置cookie保存路径 if(isset($cookiesavepath)) curl_setopt($ch,CURLOPT_COOKIEJAR,$cookiesavepath); $resp=curl_exec($ch); curl_close($ch); return $resp; } }
登入後複製
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前
By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
擊敗分裂小說需要多長時間?
3 週前
By DDD
R.E.P.O.保存文件位置:在哪里以及如何保護它?
3 週前
By DDD

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)