自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

不喝二锅头

逆水行舟

  • 博客(54)
  • 资源 (12)
  • 问答 (1)
  • 收藏
  • 关注

原创 thinkphp5跟thinkphp6的异同之处

目录结构异同安装方式tp6只能通过composer安装类的加载方式tp5采用自己的一套实现加载方式+composer部分加载方式tp6采用composer类的加载方式tp6使用严格模式而tp5没有使用tp6支持更多的PSR规范组件独立 (tp6将orm独立出来)(模板引擎)中间件改进tp6开始使用了管道模式来实现中间件 比之间的版本实现更加简洁,有序引入Filesystem组件...

2020-08-17 14:54:21 3554

原创 Centos7.7 yum安装LNMP nginx1.18.0+php7.4.6+mysql5.7.30

centos7.7 yum安装 nginx nginx1.18centos7.7 yum安装 php php7.46centos7.7 yum安装 mysql mysql5.7.3centos下重置mysql 密码centos 下设置mysql可远程连接

2020-05-27 15:33:17 941

原创 正则验证手机号

【代码】正则验证手机号。

2024-03-20 23:15:00 181

原创 迁移wsl到D后无法正常启动

【代码】迁移wsl到D后无法正常启动。

2023-01-17 20:57:12 6252 4

原创 不解压gz文件搜索文件内容

zcat *.gz | grep -a ‘*****要查找的文件内容’

2021-11-16 17:13:18 1572

原创 win10下子系统phpstorm配合xdebug3 进行断点调试

使用背景:公司的架构为api+wab为两个独立的项目,service单独独立了出来,为专门跟数据库进行交互, 这样在开发的过程中service层的数据不能直接反馈到 api或者wab, 只能用trace来打印日志 非常不便。开发过程中 需要不断打印输出结果如果你厌烦了dump echo print trace 等打印的方式不妨试试xdebug的断点

2021-09-23 16:03:36 633

原创 tp5连接win10 下的子系统redis 失败

背景: win10 下装了子系统 开发环境在子系统ubantu中进行 由于之前用的redis是线上的 测试有诸多不便 就想着在子系统中安装redis问题 :安装完成之后 posman 请求一直500 排查问题发现是redis连接失败 打印问题发现打印出结果为ERR AUTH <password> called without any password configured for the default user. Are you sure your configuration .

2021-06-17 15:58:11 263

原创 事务隔离:为什么你改了我还看不见?-丁奇MySQL45讲之笔记

务的特性:原子性、一致性、隔离性、持久性多事务同时执行的时候,可能会出现的问题:脏读、不可重复读、幻读事务隔离级别:读未提交、读提交、可重复读、串行化不同事务隔离级别的区别:4.1 读未提交:一个事务还未提交,它所做的变更就可以被别的事务看到4.2 读提交:一个事务提交之后,它所做的变更才可以被别的事务看到4.3 可重复读:一个事务执行过程中看到的数据是一致的。未提交的更改对其他事务是不可见的4.4 串行化:对应一个记录会加读写锁,出现冲突的时候,后访问的事务必须等前一个事务执行完成才能继.

2021-03-26 17:11:32 155

原创 日志系统:一条sql更新语句是如何执行的--丁奇mysql45讲笔记

更新语句和查询语句一样都会走和查询一样的流程即连接器–>分析器–>优化器–>执行器1 如果对一个表进行更新 这个表的缓存会失效这也是不建议用查询缓存的原因2 分析器会通过语法解析知道是条更新语句3 优化器决定要使用ID这个索引4 执行器负责执行找到 数据进行更新操作与查询语句不同的是更新流程涉及到两个重要的日志模块redo log 和 binlog 总结如下1 redolog...

2021-03-26 15:21:41 249 2

原创 丁奇45讲笔记之-----mysql一条查询语句是如何执行的

MySQL基本的架构示意图为一条查询语句执行的流程为连接器 :链接数据库这个时候接待你的就是mysql的连接器负责跟酷虎段建立链接,获取权限,维持和管理链接其中需要注意的几个点总结入选1 MySQL 修改用户权限,下次登录生效2 连接完成后,如果你没有后续的动作,这个连接就处于空闲状态,你可以在 show processlist 命令中看到它 默认情况下是8个小时自动断开 由参数wait_timeout控制分析器(要做什么): mysql 需要知道你做什么所以在此过程中会对语句进行分析.

2021-03-25 17:25:37 172 1

原创 php合并数组的两种方法及区别

前言源自慕课网皮奇 秒杀设计课程 所做的笔记课程目标掌握秒杀系统的核心实现系统高可用的方法论学习高并发场景的通用解决思路学习原理知识介绍减而治之(CDN原理/nginx限流/异步队形)分而治之(nginx负载均衡)特征与难点分析特征1 写强一致性(eg:商品超卖)2 读弱一致性(eg: 12306抢票 显示有抢不到)难点1 极致性能的实现(并发量高提高单服务)...

2021-03-24 16:55:20 175 1

原创 如何根据nginx日志查询时间段的qps

linux 下根据nginx 日志分析qps的高低(awk)nginx 日志如下查看各个时间段 请求接口的访问量 命令如下 cat tp_access.log | awk '{print $4}'|uniq -c|sort -n// tp_access.log 为日志名// {print $4} 为输出以第四个参数为基础 日志中参数以空格区分 这里的参考点是时间// uniq -c 去重并统计// sort -n 排序由低到高结果如下 统计各个时间点 的qps查看某个ap

2021-03-03 10:34:27 1560

原创 Thinkphp5下微信公众号获取用户信息

前言一直在用整理下tp5 开发微信公众号获取用户信息的简单笔记 废话不多说 直接贴代码如下:正文准备工作在微信公众平台的开发者工具中申请公众平台测试账号如下图在网页账号中 修改网页授权获取基本信息代码楼主是在tp5.1中开发 先写好路由 //简单授权 Route::any("getWxBase",'home/Index/getWxForBase'); Route::any("getWxInfo",'home/Index/getWxBaseInfo');

2021-02-02 14:16:06 551

原创 秒杀设计

前言课程目标掌握秒杀系统的核心实现系统高可用的方法论学习高并发场景的通用解决思路学习原理知识介绍减而治之(CDN原理/nginx限流/异步队形)分而治之(nginx负载均衡)特征与难点分析特征1 写强一致性(eg:商品超卖)2 读弱一致性(eg: 12306抢票 显示有抢不到)难点1 极致性能的实现(并发量高提高单服务)2 高可用的保证秒杀系统核心实现极致性能的读服务实现极致性能的写服务器(eg 扣库存 创建订单)极致性能的派对进度查询(eg:12306 抢

2021-01-22 14:10:21 233 2

原创 自动加载配置与设计模式

PHP中使用ArrayAccess实现配置文件加载在工厂方法中读取配置,生成可配置化的对象使用装饰器模式,生成可配置化的对象使用装饰器模式实现权限验证,模板渲染,json串化使用观察者模式实现数据更新事件的一系列更新操作使用代理模式实现数据库的主从自动切换...

2021-01-14 15:41:17 170

原创 设计模式

适配器模式可以姜截然不同的函数接口封装成统一的API实际应用举例,PHP的数据库操作有mysql,mysqli,pdo 3种,可以用适配器模式统一成一致。类似的场景还有cache适配器,将memachche, redis,file,apc等不同的缓存函数,统一成一致策略模式将一组特定的行为和算法封装成类,以适应某些特定的上下文环境,这种模式就是策略模式应用举例 加入一个电商网站系统,针对男女用户要求跳转到不同的商品类目,并且所有广告位展示不同的广告...

2021-01-14 14:55:43 120

原创 命名空间和类的自动载入

命名空间简介从广义上来说,命名空间是一种封装事物的方法 命名空间是一种封装事物的方法例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。用来解决用户编写的代码与PHP内部的类/函数/常量或第三方类/函数/常量之间的名字冲突。为很长的标识符名称(通常是为了缓解第一类问题而定义的)创建一个别名(或简短)的名称,提高源代码的可读性。类的自动载入在编写面向对象(OOP) 程序时,很多开发者为每个类新建一个 PHP 文件。 这会带来一个烦恼:每个脚本的开头,都

2021-01-12 16:09:52 134

原创 面向对象认识

面向对象概念什么是对象世间万物皆对象 如是我闻(不抽象–可见实例) 都是对象 如我不闻(抽象-不可见) 也是对象对象的基本组成– 对象的组成元素是对象的数据模型 用于描述对象的数据又称为对象的属性 或者对象的成员变量–对象的行为是队形的行为模型 用于描述对象能做什么事情又称为对象的方法对象的特点每个对象都是独一无二的对象是个特定的事物,他的职能是完成特定的功能对象是可以重复使用的什么是面向对象面向就是在编程的时候一直吧对象放在心上面向对象编程就是 在变成的时

2021-01-11 18:04:25 238

原创 laravel上传图片,目录有图片, 访问404

问题laravel 上传图片 (项目是从别的服务器拷贝过来布置到新的服务器上) 查看目录有图片 但是 访问却总是报404解决办法在项目目录下面删除public/storagerm -rf public/storage重新建立软连接php artisan storage:link 再访问图片就正常了...

2021-01-05 17:37:00 810

原创 JAVA的DigestUtils.md5Hex 在php的写法

前端时间对接接口只提供了java的实例文档 其中 采用签名算法鉴权 本人是个java小白 但是本着语言都有些相通性去理解 java中的DigestUtils.md5Hex 相当于PHP中的md5加密 但是在过程中发现 php的MD5加密跟java中的DigestUtils.md5Hex 如果是简单的 字符串 如12345 这样的 结果是一样的 但是针对复杂的字符串 加密结果 有出入 所以整理了下面的 写法class JavaMd5Hex{//使用方法为:调用 md5H.

2020-12-28 11:57:31 3755 2

原创 php 生成UUID

前言前段时间接触到接口 只给了个java的实例文档 采用签名鉴权方式 其中用java中的UUID如下图所示:php生成UUID的方法 public function gen_uuid() { $uuid = array( 'time_low' => 0, 'time_mid' => 0, 'time_hi' => 0, 'clock_seq_hi

2020-12-28 11:19:57 2640

原创 laravel学习之 --核心思想

服务容器容器概念容器中装的是实例对象(服务)IOC控制反转DI依赖注入如控制器中在函数的参数中加入一个类 就会在函数中注入一个实例eg 服务提供者门脸模式静态调用eg:public function index(){$params=\Request::all();}app.php->aliases...

2020-12-09 14:29:08 137

原创 laravel 学习之路由

laravel 的路由HTTP方法Route::get($url,$callback)//获取资源Route::post($url,$callback)//创建资源Route::put($url,$callback)//更新资源Route::patch($url,$callback)//增量更新资源Route::delete($url,$callback)//删除资源Route::options($url,$callback)//查询资源支持哪些方法Route::any($url,$c

2020-11-03 15:03:53 103

原创 win10 删除无用的bios引导

前言 :手上有个旧电脑 折腾成了win10+ubantu+mac黑苹果 F12启动的时候发现多出了很多无用的bios系统引导,强迫症的我花费了一下午的工夫 尝试删除都无效放弃的时候 尝试了下booice+pe的方式 修复了下载booice 打开选择efi 修复 部分系统无法看到选项 这个时候就需要准备个u盘将U盘制作成系统启动盘 我个人用的老毛桃 制作成功后将 booice 拷贝到U盘开机F12 (部分机型不一样) 选择U盘启动 进入PE系统 找到U盘中的booice打开 选择e.

2020-10-22 11:29:31 3783

原创 thinkphp源码学习之(一幅草图看懂容器类)

2020-09-28 16:21:18 167

原创 yum安装LNMP环境 Centos7.6+ php7.3

写在前面的以前一直使用lnmp一键安装包 ,开发也够用了 。近期接触到生产环境的布置 再使用lnmp 一键安装总有些不放心 , 索性自己尝试使用yum 安装 记录安装的过程 方便大家借鉴以及自己查阅 。 不喜勿喷1安装nginx获取yum 源nginx官方源注意楼主选用的是centos的源 可以根据自己的系统进行设置 复制选中部分进入yum管理并且设置nginx 源文件...

2020-09-27 09:24:16 515

原创 thinkphp源码学习之-( 单例模式、注册树模式、依赖注入、反射机制)

单例模式------是为了解决(如何在整个项目中创建一个唯一的对象实例)拥有一个构造函数,并且为private拥有一个静态成员变量用来保持类的实例拥有一个访问这个实例的静态方法代码如下就是一个简单的单例模式<?phpclass Single { static public $instance= null; private function __construct() { } /** * @return Single|null

2020-09-08 17:44:34 353

原创 thinkphp源码学习之-( 扩展 yaml 安装)

yum install libyaml-develpecl install yaml

2020-09-08 13:58:44 288

原创 thinkphp6的学习笔记

控制器的巧用json 方法的使用控制器request属性绑定request对象会继承BaseController抽象类__construct 依赖注入将app对象实现$this->request->param('aa')第一种获取方式$request->param('aa')第二种依赖注入input("aa")第三种request()->param('aa')第四种 Request::param('aa') (门面模式)第五种健壮系统服务...

2020-08-19 14:43:38 401

原创 lnmp 一键安装包下fastadmin 后台跳转登陆404

问题在使用lnmp.org一键安装包安装好环境下进行fastadmin 项目的搭建 确认伪静态,没有问题 (前台首页跟个人中心页面都可以正常访问) 但是在登陆后台的情况下 ,跳转登陆页面出现404的状态 如图解决办法进入nginx配置文件将include enable-php.conf;修改为include enable-php-pathinfo.conf;...

2020-07-21 11:12:55 2596

原创 php -v和phpinfo() 输出的php版本不一致

怀疑是系统变量捣的鬼 执行下面果然成功export PATH=/usr/local/php/bin:/usr/local/php/sbin:${PATH}source ~/.bash_profilec即可解决

2020-07-08 17:30:18 628

原创 mysql主从服务器的搭建(两台服务器实现读写分离)

介绍当项目访问量比较多 相应的数据库的读写操作就特别多,就会导致服务器受不了那么多用户的请求和对数据的操作,导致服务器负荷,相应的用户的等待时间就会特别长,给用户的体验特别差,而主从同步就很好的解决的这种并发的问题。主从同步:简单来说就是使用两台服务器,分别处理用户的读和写的操作,从而实现了读写分离。由于从服务器同步的主服务器上的数据,所以主从同步极大的保证了数据的安全。需求您需要架设两台服务器(A服务器与B服务器)都装好msql关闭iptables 和selinux service i

2020-07-07 11:27:41 949

原创 修改运行中docker的映射端口号

容器的配置文件路径:/var/lib/docker/containers/[hash_of_the_container]/hostconfig.json重启daocker systemctl restart docker

2020-06-24 11:19:09 315

原创 lnmp环境 开启pathinfo

检查php.ini中的cgi.fix_pathinfo 是否开启开启状态为cgi.fix_pathinfo=1nginx 下的配置文件enable-php.conf 修改为 location ~ [^/]\.php(/|$) { #try_files $uri =404; fastcgi_pass unix:/tmp/php-cgi.sock; fastcgi_index index.php;

2020-06-23 17:15:10 188

原创 iled: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 10061 -j DNAT -

docker 创建容器报错iled: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 10061 -j DNAT -重启docke 即可systemctl restart docker

2020-06-23 14:59:25 282

原创 Liunx Centos7安装node.js/bower

安装nodeyum install -y gcc-c++ makecurl -sL https://rpm.nodesource.com/setup_10.x | sudo -E bash -yum install -y nodejs安装bowernpm install bower -g

2020-06-05 10:35:43 294

原创 解决 Package: vips-full-8.9.2-2.el7.remi.x86_64 (remi-safe) Requires: libheif.so.1()(64bit)

错误显示Error: Package: vips-full-8.9.2-2.el7.remi.x86_64 (remi-safe)Requires: libheif.so.1()(64bit)You could try using --skip-broken to work around the problemYou could try running: rpm -Va --nofiles --nodigest运行下面进行解决wget https://download1.rpmfusion.o

2020-06-04 16:48:44 775

原创 查看php-fpm 或者nginx运行的用户

#nginxps aux | grep -v root | grep nginx | cut -d\ -f1 | sort | uniq#php-fpmps aux | grep -v root | grep nginx | cut -d\ -f1 | sort | uniq

2020-05-29 14:13:14 1025

原创 Linux的目录结构详解(CentOS)

Linux的目录结构/:最顶部的目录,是所有目录的直接或者间接的父级目录,也叫跟目录/boot:启动目录,启动信息/bin:程序的启动文件,程序的命令/sbin: 这个是超级用户存放的一些应用程序的地方/dev:设备目录/etc:可编辑文本配置,放一些配置信息/home:指的是用户目录/root:最大的用户有个单独的项目/lib:存放一些库/lib64:给64位操作系统提供的,存放一些库lost+fount:这个目录平时是空的,系统非正常关机而留下的“无家可归”的文件就存在这里/

2020-05-21 17:15:43 178

原创 docker的一些基础操作

可以从官网进行搜索下载

2020-04-26 09:37:01 122

Z480 黑苹果bigsur EFI 文件中附 AR9285 在bigsur中使用的教程

lenovo 老机器黑苹果 lenovo Z480黑苹果 lenovo 3210-4000黑苹果 bigsur

2022-05-05

nginx+php+redis.rar

docker构建nginx+php+redis 容器文件

2021-03-16

Navicat Premium_15.0.22.dmg.zip

mavicat for MacOS11 big sur 楼主亲测完美安装 各位可以安装试试看

2020-11-27

ThinkPad-T460s-macOS-OpenCore-master.rar

联想T460s 黑苹果 OS引导 楼主亲测 引导装黑苹果11.0 除无线驱动外各项驱动均已驱动 祝愿各位都能吃苹果成功 附 T460s 无线网激活教程 B站找的 亲测 成功激活 https://www.bilibili.com/video/av286088300/

2020-11-24

lenovoT460s-mac-efi.rar

thinkpad T460s 黑苹果 EFI 适用于 mac10.12 链接:https://pan.baidu.com/s/1op-lk4v99r03L50zrDOpYQ 提取码:oe67

2020-11-20

联想z480刷bios.zip

做好DOS启动盘了,下一步就是把要刷的文件和工具放进去。 然后就可以开机按F12选择USB启动到dos 了 当出现C:>的时候,输入FLASH.bat回车,不区分大小写 然后等待完成就行 了。(再次出现C:>表示完成)

2020-10-30

windows 版 dbeaver 代替navicat

免费的多平台数据库工具,为开发人员,数据库管理员,分析师和所有人谁需要与数据库工作。支持所有流行的数据库: MySQL, PostgreSQL, SQLite, Oracle, DB2, SQL Server, Sybase, MS Access, Teradata, Firebird, Apache Hive, Phoenix, Presto, etc.

2020-10-27

FinalShell SSH 连接工具

FinalShell SSH工具,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux,版本3.6.3,更新时间2020.9.7

2020-09-24

Docker Desktop Installer.rar

docker desktop for windows 国内访问官方网站下载巨慢 在此 我下载下来提供给各位节省时间下载

2020-07-28

VC软件集合.rar

phpstudy 安装所需的VC插件合集包含 VC9 10 11 12 13 14 等 32位与64位 只是记录下 插件 不需要任何积分

2020-07-20

Sourcetree 包含了 适用windows 版 以及mac版的版本

适用于Windows和Mac的免费Git客户端 Sourcetree简化了与Git存储库交互的方式,因此您可以专注于编码。通过Sourcetree的简单Git GUI可视化和管理您的存储库。

2020-04-22

Git-2.26.2-64.exe windows 版

官网下载比较慢 整理到这个上面 方便各位下载 节约宝贵时间 各位可以下载 解压就可以可以了 声明啊 下载设置了0积分 csdn的规则不知道怎么回事 老是自动加积分 博主看到会就会更改

2020-04-22

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

TA关注的人

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