自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

猿分已尽的博客

学习资料

  • 博客(158)
  • 资源 (7)
  • 收藏
  • 关注

原创 redis分布式锁

【代码】redis分布式锁。

2024-02-20 11:46:24 109

原创 数据库导入数据,内容过大无法导入问题。

修改后,直接查看,会发现没有修改,还是默认原先的大小。需要重新连接数据库,再次查看,发现已修改。docker 环境下,修改允许最大的容量,注意:修改后,重启docker会失效。

2024-01-12 14:34:32 390

原创 hyperf连接多个redis

封装一个类,即可实现连接库的切换。

2023-10-24 16:47:10 136

原创 记录时间控制输出结果的代码

第二种,根据当前时间,控制指定整点时间前后5分钟的输出结果。第一种是通过时间段控制,上午下午输出结果。

2023-09-06 21:01:04 110

原创 函数重写mb_substr和mb_strlen

php 自带的 strlen 与 substr 函数没法处理中文字符,于是,我们会用 mb_ 系列函数替代,但是,没有 mbstring 库怎么办?这就需要我们自己写一个来替代了。

2023-08-04 11:10:43 135

原创 关于数据库json 字段的查询

关于数据库json 字段的查询

2023-07-18 19:17:28 1258

原创 使用multipass,代替本地docker解决占用内存高的问题

为了解决mac本地docker占用太多内存问题,使用multipass替代

2022-11-17 17:26:19 448 1

原创 记一次ipdb使用

ipdb格式的数据库离线下载,仅供学习使用

2022-10-24 10:11:46 418

原创 二维数组根据某个字段进行分组

二维数组分组

2022-08-30 09:16:32 439

原创 hyperf 封装logger

代码】hyperf 封装logger。

2022-08-09 14:31:22 416

原创 hyperf2.1中使用中间件方式实现跨域功能

hyperf2.1中使用中间件方式实现跨域功能。

2022-08-09 10:39:36 597

原创 md5+des加密

加密步骤:1.获取13位时间戳2.对时间戳进行md5加密,获取32位小写key3.对key进行加工,key=li+key4.将key转换为byte数组,获取前8个字符作为key25.用key2对原body进行des加密,加密模式ECB,填充pkcs7padding,输出hex,字符集utf8body......

2022-06-14 19:29:54 355

原创 mac 本地docker 运行hyperf

1.docker-compose.yml构建容器(为了避免不同容器之间网络不通的情况,已经附带swoole等拓展)version: '2'services: rabbitmq1: image: rabbitmq container_name: rabbitmq1 restart: always hostname: rabbitmq1 environment: RABBITMQ_ERLANG_COOKIE: "SWQOKODSQALRPCLNM

2022-05-20 10:38:18 784

原创 时间类Carbon的安装和使用

方式一composer require nesbot/carbon方式二:Copy{ "require": { "nesbot/carbon": "^2.16" }}

2022-04-14 08:34:09 1409

转载 mac 使用iTerm2快捷登录远程服务器

正常使用ssh登录服务器:ssh -p port user@hostuser@host's password:输入端口,用户名,服务器ip地址后,还需输入密码,并且每次重新登录都要输入。使用 scp 上传下载文件也是这样。原理:参考:登录 - 推酷SSH之所以能够保证安全,原因在于它采用了公钥加密。整个ssh密码登录过程是这样的:1)用户向远程主机发登录请求:ssh user@host2)远程主机收到用户的登录请求,把自己的公钥发给用户。2)用户使用这个公钥,将登录密码.

2022-03-31 15:24:32 969

原创 laravel实现多场景验证

当我们实际开发中,可能一个模块需要有多个验证场景,如果为每一个验证场景都新建一个 FormRequest 不就太过繁琐了。那么给 laravel 加上一个验证场景通过一个验证类一个模块或多个模块来适应不同的场景不就方便很多了。开始首先 我们封装了一个基类 BaseValidate.php 并将其放在 app\Validate 下,当然你也可以放在其他地方,只要修改好命名空间就好<?phpnamespace App\Validate;use Illuminate\Support\F

2022-03-31 10:43:10 670

转载 LARAVEL --JOBS (同步\异步)消息队列 QUEUE --晋升篇

本篇博客为了更明确异步消息队列和同步消息队列的实现原理 以MySQL消息队列为示例,但是在真正的项目中(如果没有单独的异步服务器,则建议使用Redis消息队列)一、简介Laravel 的队列服务为不同的队列后端系统提供了一套统一的 API 。队列允许你将一个耗时的任务进行延迟处理,例如像 e-mail 发送。这能让应用程序对页面的请求有更快的响应。二、配置队列的配置文件被保存在 config/queue.php 中。但是Laravel中优先选用.env的配置在这个文件内你可以找到包含在 La

2022-03-25 19:55:26 2915

转载 laravel 模块化开发

最近项目想用 Laravel 框架做开发,但考虑到随着项目的增大,代码的增多,需求变的复杂多样化,将所有代码写在一起,无疑是一个很大的问题,这将导致代码过于复杂,一些写过的功能点想要重新使用,查找起来太过费劲;所以考虑到使用和其他框架类似的模块化开发,但是 laravel 框架没有明确的模块化划分,所以就想找一下看是否有其他第三方模块化(Module)开发包来使用,毕竟 laravel 社区这么火热和强大,最终找到了模块化开发包,还比较好用,所以总结一下,分享出来。感慨一下:站在巨人的肩膀上写东西就是好!

2022-03-16 14:16:27 874 1

原创 jmeter 测试聚合报告查看

1、Label - 请求对应的name属性值。2、 Samples - 具有相同标号的样本数,总的发出请求数。3、Average - 请求的平均响应时间。4、Median - 50%的样本都没有超过这个时间。这个值是指把所有数据按由小到大将其排列,就是排列在第50%的值。5、90% Line - 90%的样本都没有超过这个时间。这个值是指把所有数据按由小到大将其排列,就是排列在第90%的值。6、95% Line - 95%的样本都没有超过这个时间。这个值是指把所有数据按由小到大将其排列,

2022-02-22 13:42:46 1975

转载 MySQL教程之concat以及group_concat的用法

本文中使用的例子均在下面的数据库表tt2下执行:一、concat()函数1、功能:将多个字符串连接成一个字符串。2、语法:concat(str1, str2,...)返回结果为连接参数产生的字符串,如果有任何一个参数为null,则返回值为null。3、举例:例1:select concat (id, name, score) as info from tt2;中间有一行为null是因为tt2表中有一行的score值为null。例2:在例1的结果中三个字段id,na

2022-02-10 18:55:08 2568

原创 phpstudy环境下,给phpstorm配置xdebug

phpstudy 会默认安装好每一个php版本对应的xdebug,我们需要打开对应php版本的php.ini文件,然后配置以下信息,然后重启服务[xdebug]zend_extension ="D:\phpstudy_pro\Extensions\php\php7.2.9nts\ext\php_xdebug.dll"xdebug.remote_enable = On;启用性能检测分析xdebug.profiler_enable = On;启用代码自动跟踪xdebug.auto_tra

2022-01-13 16:29:12 226

原创 Linux下ps -ef和ps aux的区别及格式详解

Linux下显示系统进程的命令ps,最常用的有ps -ef 和ps aux。这两个到底有什么区别呢?两者没太大差别,讨论这个问题,要追溯到Unix系统中的两种风格,System V风格和BSD 风格,ps aux最初用到Unix Style中,而ps -ef被用在System V Style中,两者输出略有不同。现在的大部分Linux系统都是可以同时使用这两种方式的。ps -ef 是用标准的格式显示进程的、其格式如下其中各列的内容意思如下UID //用户ID、但输出的是用户名PID...

2021-12-24 11:02:04 447

原创 java中 sesssion/cookie ,转发/重定向

cookie Cookie cookie = new Cookie("email",email); cookie.setMaxAge(10*60); response.addCookie(cookie); if(cookie != null){ if(cookie.getName().equals("email")){ System.out.println("我是cookie数据"+

2021-11-29 13:06:33 690

原创 java 文件操作

1.创建。boolean createNewFile(); //创建文件boolean mkdir();创建文件夹boolean mkdirs();创建多级文件夹。2.删除。boolean delete();void deleteOnExit();在程序退出时删除文件。3.判断。boolean canExcute(); 判断是否可执行boolean exists(); 文件事是否存在。isFile();文件isDirectory();文件夹isHidden();//java能得到

2021-11-25 17:34:58 341

转载 java8 文件图片转base64 编码解码

import sun.misc.BASE64Encoder; import java.io.*;import java.nio.file.Files;import java.nio.file.Paths;import java.nio.file.StandardOpenOption;import java.util.Base64; public class Base64Util { /** * 文件转化成base64字符串 */ public sta.

2021-11-25 17:22:46 395

原创 java中事务

手动:@AutowiredDataSourceTransactionManager dataSourceTransactionManager;@AutowiredTransactionDefinition transactionDefinition;TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);dataSourceT

2021-11-25 15:57:40 2297

原创 Java 中基本类型和字符串之间的转换

在程序开发中,我们经常需要在基本数据类型和字符串之间进行转换。其中,基本类型转换为字符串有三种方法:1. 使用包装类的 toString() 方法2. 使用String类的 valueOf() 方法3. 用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串再来看,将字符串转换成基本类型有两种方法:1. 调用包装类的 parseXxx 静态方法2. 调用包装类的 valueOf() 方法转换为基本类型的包装类,会自动拆箱PS:其他基本类型与字符串的相互转化这里

2021-11-19 17:00:42 636

原创 java中String类的常用方法

运行结果:运行结果:那么,“==” 和 equals() 有什么区别呢?==: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象equals(): 比较存储在两个字符串对象中的内容是否一致...

2021-11-19 16:48:25 399

原创 java自学之路-day2(个人笔记)

1、包装类Java共有8种基本数据类型 byte short int long char boolean float doublejava中除了boolean类型之外,其他7中类型相互之间可以进行转换byte <(short=char)< int < long < float < double 小可直接转大、大转小会失去精度包装类:所有的包装类都是final修饰的,也就是它们都是无法被继承和重写的。2、继承3、多态多态存在的三个必要条件:1、...

2021-11-17 15:18:32 87

原创 虚拟机搭建lnmp环境

等待写

2021-11-08 17:08:40 407

原创 Linux安装部署Redis(超级详细)

前言网上搜索了一筐如何在Linux下安装部署Redis的文章,各种文章混搭在一起勉强安装成功了。自己也记录下,方便后续安装时候有个借鉴之处。Redis版本 5.0.4 服务器版本 Linux CentOS 7.6 64位下载Redis进入官网找到下载地址Redis右键Download按钮,选择复制链接。进入到Xshell控制台(默认当前是root根目录),输入wget 将上面复制的下载链接粘贴上,如下命令: 1 wget http://down.

2021-10-26 16:17:53 135

原创 yii 模型查询

1. 简单查询[[one()]]: 根据查询结果返回查询的第一条记录。[[all()]]: 根据查询结果返回所有记录。[[count()]]: 返回记录的数量。[[sum()]]: 返回指定列的总数。[[average()]]: 返回指定列的平均值。[[min()]]: 返回指定列的最小值。[[max()]]: 返回指定列的最大值。[[scalar()]]: 返回查询结果的第一行中的第一列的值。[[column()]]: 返回查询结果中的第一列的值。[[exists

2021-10-24 09:00:00 456

原创 2021-10-24

哈哈哈

2021-10-24 08:03:07 44

原创 yii2框架学习

1. 简单查询[[one()]]: 根据查询结果返回查询的第一条记录。[[all()]]: 根据查询结果返回所有记录。[[count()]]: 返回记录的数量。[[sum()]]: 返回指定列的总数。[[average()]]: 返回指定列的平均值。[[min()]]: 返回指定列的最小值。[[max()]]: 返回指定列的最大值。[[scalar()]]: 返回查询结果的第一行中的第一列的值。[[column()]]: 返回查询结果中的第一列的值。[[exists

2021-09-10 13:53:24 132

原创 获取视频第一帧

//获得视频文件的缩略图 function getVideoCover($file,$time,$name) { if(empty($time))$time = '1';//默认截取第一秒第一帧 $strlen = strlen($file); // $videoCover = substr($file,0,$strlen-4); // $videoCoverName = $videoCover.'.jpg';//缩略图命名 //exec("ffmpeg -i ".$file." -y -f m

2021-06-17 09:31:31 825

原创 将某个文件夹下的JPG格式的图片取出,存入新的文件夹

$path = 'xxxxx';///当前目录$handle = opendir($path); //当前目录while (false !== ($file = readdir($handle))) { //遍历该php文件所在目录 list($filesname,$kzm)=explode(".",$file);//获取扩展名 if($kzm=="gif" or $kzm=="jpg" or $kzm=="JPG") { //文件过滤 if (!is_di...

2021-04-28 18:41:47 465 1

原创 php 执行mysql存储过程后 再执行sql 失败 PHP执行MYSQL存储过程报错:Commands out of sync; you can‘t run this command now

执行上面的代码后就会出现上面的错误,消息说明MYSQL数据库认为是这一个错误的命令执行顺序。原因在于MYSQL的存储过程执行完成后除了返回实际结果集还会返回存储过程执行的转态,而上面的代码仅处理了第一个结果集,第二个结果集并没有被释放掉。要解决这个问题,需要用mysqli的multi_query方法,遍历所有的结果集并释放掉掉。...

2021-04-08 18:00:23 219

原创 处理unset之后数组变对象

<?php$a=array("Name"=>"Peter","Age"=>"41","Country"=>"USA");$a=array_values($a);dump($a);?>

2021-02-05 19:46:03 223

转载 php获取富文本编译器中的所有图片

/** * 获取富文本编译器中的所有图片 * @param string $contentStr * @return array */function getPatternMatchImages($contentStr = ""){ $img_src_arr = []; $pattern_imgTag = '/<img\b.*?(?:\>|\/>)/i'; preg_match_all($pattern_imgTag,$contentStr,$matc.

2021-01-12 10:39:55 635

原创 PHP中文转拼音(封装)

<?php/** +------------------------------------------------------ * PHP 汉字转拼音 +------------------------------------------------------ * 使用方法: * $py = new PinYin(); * echo $py->getAllPY("输出汉字所有拼音"); //shuchuhanzisuoyoupinyin .

2020-12-29 14:13:40 295 3

快递插件(快递鸟插件)

插件安装后需在后台配置相应的参数后才可以使用,相应的参数需要从快递鸟官网注册后使用(新用户注册可免费使用一年物流查询服务)

2020-07-15

省市区mysql表.zip

该资源是全国所有城市的省市区联动表,而且还有详细的各个地点的区号,经纬度,邮编以及地区首字母的缩写,满足常用的地区功能的数据库表

2020-06-15

地图插件(fastadmin地图插件)

该资源支持高德地图,百度地图,腾讯地图,使用方便,支持智能搜索,经纬度定位等共功能,移植性高。是一款特别适合前端使用的插件以及后台快速开发使用的插件。

2020-06-15

phpRedis拓展和redis安装.zip

根据自己的系统环境选择不同的redis拓展进行安装,然后安装redis启动后就可以使用redis

2019-05-23

wordpress-5.2.1.zip

该安装包需要的系统环境php版本不得低于5.6,最好是7.3

2019-05-22

敏感词汇组

敏感词过滤功能在很多地方都会用到,理论上在Web应用中,只要涉及用户输入的地方,都需要进行文本校验,如:XSS校验、SQL注入检验、敏感词过滤等。

2018-12-19

postman安装包

postMan是一款功能强大的网页调试与发送网页HTTP请求的工具。postMan能够发送任何类型的HTTP请求(GET, HEAD, POST,PUT..),附带任何数量的参数和HTTP headers。支持不同的认证机制(basic, digest,OAuth),接收到的响应语法高亮(HTML,JSON或XML)。 postMan既可以以chrome浏览器插件的形式存在,也可以是独立的应用程序存在。

2018-12-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除