自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 golang 切片 len cap长度介绍

最近使用golang切片长度与容量根据以下得出切片长度就是实际数组的长度容量计算方式为:切片初始长度 * 2n (n为追加总数 / 初始化切片容量)向上取整package mainimport "fmt"func main() { //show[int]([]int{1, 2, 4, 4, 5, 6}) //show[string]([]string{"张三", "李四", "王五"}) a := []int{1, 2} fmt.Println(len(a)) // cap 2 fm

2022-04-04 21:36:19 752

原创 php使用rabbitmq

第一步:创建一个写队列的程序$config = [ 'host' => "172.22.0.5", 'port' => "5672", 'vhost' => "/guest", 'login' => "guest", 'password' => "123456",];$exchange_name = "test_exchange1";$routs = "name.zhangsan";$c

2021-03-18 19:53:40 140

原创 redis 数据结构与对象-字典

那么字典都可以做什么呢?1、redis的数据库底层就是使用字典实现的2、如果哈希列表的数据量较多,或者存储的内容较长同样使用字典来实现3、还有集合有序集合等等字典的一些特性1、字典使用hash值来计算的存储位置,所以获取某个值的时间复杂度相对较小2、如果出现重复hash值将会使用next来做一个单向链表3、字典包含两个hash表,其中0列表存储数据,1列表在渐进式扩展收缩使用4、hash列表自动扩展收缩为2的整倍数字典的结构typedef struct dict { dictTyp

2021-02-21 23:58:05 107

转载 反射的用法

1、理解什么是反射 1.1 面向对象编程中对象被赋予了自省的能力,而这个自省的过程就是反射。 1.2 直观理解就是根据目的地找到出发地,比如一个普通对象,我们可以通过这个对象反推出他所属的类,以及所属类都有那些属性方法注释等等。 1.3 反射是指在PHP运行状态中,扩展分析PHP程序,导出或提出关于类、方法、属性、参数等的详细信息,包括注释。这种动态获取信息以及动态调用对象方法的功能称为反射API。2、反射都可以做什么 2.1 自动生成文档 2.2 实现 MVC 架...

2021-02-21 21:57:34 133

原创 如何学习redis

通过学习了一段时间的redis设计与实现,结合自己的学习心得简单总结一下学习路线第一步:先找一个简单的教程,我就找的菜鸟教程redis,把里边所有的数据类型还有怎么操作跟着教程走一遍,经过此步骤之后你就会完全熟悉redis的几种数据结构及其使用方法第二步:掌握了数据结构然后需要深入的了解了,比方说面试会问你来说下redis sds数据结构的实现方式,惰性删除策略有几种,list底层使用的有几种struct,aof rdb,主从同步,哨兵集群原理等等等等第三步:你已经知道现在自己需要的是什么了加深一步

2021-01-20 22:08:26 562

原创 redis 数据结构与对象-链表

1、链表的数据结构typedef struct list { listNode * head; // 表头结点 listNode * tail; // 表尾节点 unsigned long len; // 链表包含的节点数量 void *(*dup)(void * ptr); // 节点值赋值函数 void (*free)(void *ptr); // 节点值释放函数 int (*match)(void *ptr, void *key); // 节点值对比函数

2021-01-20 21:14:20 67

原创 redis 数据结构与对象-简单动态字符串

简单动态字符串1、SDS的数据结构struct sdshdr { int len; // 记录buf字符串数组已使用字节的数量,即sds保存字符串的长度此长度不包含C结尾的\0 int free; // 记录buf数组总未使用的字节数量(redis预分配发难) char buf[]; // 字符数组,保存sds具体的字符串即字符串+\0结尾的\0是为了方便复用一部分C的函数}2、SDS与C字符串的区别1、常数复杂度获取字符串长度SDS使用len来存储SDS的字符串长度,所以每次获取字符

2021-01-20 20:51:21 91

原创 php trait 使用详解

摘一段官方的注释:自 PHP 5.4.0 起,PHP 实现了一种代码复用的方法,称为 trait。Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用 method。Trait 和 Class 组合的语义定义了一种减少复杂性的方式,避免传统多继承和 Mixin 类相关典型问题。Trait 和 Class 相似,但仅仅旨在用细粒度和一致的方式来组合功能。 无法通过 trait 自身来实例化。它

2020-08-27 17:10:36 229

原创 Yii2 event tigger 关于事件的简单使用

首先需要明白事件是什么?在什么情况下使用?使用它带来了什么好处?1、什么是事件官方解释:事件可以将自定义代码“注入”到现有代码中的特定执行点。 附加自定义代码到某个事件,当这个事件被触发时,这些代码就会自动执行。 例如,邮件程序对象成功发出消息时可触发messageSent事件。 如想追踪成功发送的消息,可以附加相应追踪代码到messageSent事件个人理解:就是一个监听者模式的实现,即现定义一个事件名称,比方说定义一个跑的名称,然后去注册跑的时候都做什么动作,最后在去触发跑的操作2...

2020-08-26 13:45:06 982

原创 如何将某个commit的内容放到其他分支,如何检出某个commit记录

commit之后,发现写错分支了,我哩个曺,怎么办下边教一个简单的命令使用git reflog 查找你要检出的commitID然后切到你要找回的分支git cherrp-pick commitID好了,整回来了还有就是,如果两个功能在一个分支里,现在只允许上线一个功能,就可以使用下边命令,检出你的内容了,所以要求commit的提交,必须得规范,以后得注意了...

2020-07-29 17:46:33 322

原创 git合并commit以及注意事项

问题描述今天在写代码的时候由于一时的疏忽,少写了一行代码未提交结果。前端发现没有此信息,检查代码发现少提交了一行,在提交发现一行代码就要占用一个commit,UUUU这对于我看commit来说很麻烦,于是想有没有可以合并commit的操作呢,粗略的找到了此方法此操作使用的是rebase操作代码哪里写的不对,请联系我补充下,万分感谢如何合并commit记录分两种情况第一种:commit记录已经提交如果代码已提交,问题就比较麻烦了,因为已经提到到了远程仓库合并commit操作提交将会导致,

2020-07-29 17:32:31 747

原创 php错误总结

<?php/** * debug 两个操作获得回溯,一个直接输出,一个不输出有返回值 */// debug_backtrace(); 以数组形式返回,返回详细调用流程,附带参数,方法,行号,文件位置// debug_print_backtrace(); 以简单的方式输出,包含方法名,附带参数,什么文件,第几行//function a($condition){// ec...

2018-09-28 00:06:35 116

原创 phpunit 单元测试安装与简单使用

第一步安装(windows)本次安装使用composer创建一个phpunit文件夹在文件夹中新建一个composer.json文件composer.json 内容:{ "require-dev": { "phpunit/phpunit": "4.5.*" }}执行composer install安装成功后文件夹目录 tes...

2018-08-10 16:49:46 660

转载 phpunit学习第一章

用phpUnit入门TDD用phpunit实战TDD系列从一个银行账户开始假设你已经 安装了phpunit.我们从一个简单的银行账户的例子开始了解TDD(Test-Driven-Development)的思想。在工程目录下建立两个目录, src和test,在src下建立文件 BankAccount.php,在test目录下建立文件BankAccountTest.php。...

2018-08-07 23:13:51 359

原创 git学习第二版

输入git log查看的是不是不太清晰git log 显示当前所有提交过的版本信息git reflog 查看所有分支的所有操作记录告诉大家一个比较屌的命令,输入git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgre...

2018-08-02 14:51:44 376 1

原创 git基础操作

初始化教程小编脑子比较笨,有什么不对的请多多指导先了解一些最基本的定义git 分四个区工作区 暂存区 本地仓库 远程仓库工作区:开发区,随时编辑的地区暂存区:已经add过,但是未commit的本地仓库:已经commit存储到本地仓库远程仓库:已经push到远程仓库的。我的理解就是提交到了所有人共有的仓库配置git用户名邮箱等git config -...

2018-08-02 14:49:07 138

原创 thinkphp5 hook钩子用法

1、新建一个钩子目录在项目模块下2、在钩子目录中新建钩子文件例:<?php/** * User: : lims * Date: : 2018/6/26 * Time: : 下午2:28 * Effect : */namespace app\index\hook;use app\index\model\Member;class T...

2018-06-26 15:28:09 3881

原创 php队列操作redis

话不多说直接贴代码## 单队列调用 Lock::lock( function ($redis){ echo "hello word!"; sleep(10); }, "hello", 50, ); ## 多队列调用 Lock::queueLock(...

2018-06-22 15:01:11 495

转载 php多维数组排序

先看一个简答的事例$data=array( array("name"=>"zhangsan","age"=>"20",'sex'=>"男"), array("name"=>"lisi","age"=>"19",'sex'=>&amp

2018-06-14 13:39:26 122

原创 书写自己第一个composer包

网上搜了很多教程,很多都不太理解,简单整理一下,终于写出了第一个自己的composer包,本人比较菜,请大佬不要嘲笑,有啥不合理,不对的地方请各位大佬指点小弟一二1、先了解一下composer包的结构composer -自己随便起的包含composer包的名称 src -自己随便起的一个存放路径 composer....

2018-06-13 17:56:28 1252

转载 laravel 操作reids 入门 列表操作等

Redis模块负责与Redis数据库交互,并提供Redis的相关API支持;Redis模块提供redis与redis.connection这两个服务;redis.connection服务提供redis连接对象;redis服务提供Illuminate\Redis\RedisManager对象,负责与Redis打交道的这部分管理工作;配置项以下是笔者的示例;default是

2017-11-21 16:11:50 401

原创 laravel+ajax 上传图片

在整理项目中遇到一个上传图片的功能,搜索了很长时间终于整明白了,小编能力有限,话不多说下边开始分享内容第一步:App\Http\Middleware\VerifyCsrfToken.php修改return parent::handle($request, $next);为return parent::addCookieToResponse($request, $next($re

2017-11-20 16:20:05 1787

空空如也

空空如也

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

TA关注的人

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