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; } }

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

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

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

在Avue组件库中实现Avue-crud行编辑的onBlur事件手动触发Avue-crud组件提供了便捷的行内编辑功能,但有时我们需要�...

GiteePages静态网站部署失败:404错误排查与解决在使用Gitee...

如何在后端开发中快速搭建前台页面?作为一个拥有三四年经验的后端开发者,掌握了基础的javascript、css和html�...

在ChromeDevTools中如何有效修改并重放请求的Cookies在使用Chrome...

网页自动化与数值计算:基于浏览器内嵌脚本的实现本文将探讨如何使用浏览器内嵌脚本实现网页元素操作和数...

实现滚动条与元素独立移动的页面固定效果在网页设计中,有时我们需要实现一个特殊的效果,即当滚动条滚动...
