自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

疯子源

定义更新Python相关技术分享

  • 博客(98)
  • 资源 (1)
  • 收藏
  • 关注

原创 算法--0001: 回文数

golang php 回文数算法

2022-07-01 12:03:24 278 1

原创 liunx打包文件上传解压

进⼊到⽬标⽂件夹,在打包当前⽂件夹内所有⽂件并⽣成xxx.tar.gz 压缩包。tar -zcvf xxx.tar.gz *下载输⼊ sz xxx.tar.gz 回车,会让你选择本地路径存储要下载的⽂件sz xxx.tar.gz上传输⼊ rz 回车,会让你选择本地⽂件,确定上传。rz解压tar -zxvf xxx.tar.gzzxvf命令: 这些都是tar的参数。.tar.gz是⼀个压缩包,.tar只是打包⽽没有压缩,注意这点。z:通过gzip⽀持压缩或解压缩。还有其他的压缩或解...

2022-05-23 18:38:26 269

原创 Go-sql-动态生成where

//主方法func GenWhereByStruct(in interface{})(string,[]interface{}){ vValue :=reflect.ValueOf(in) vType :=reflect.TypeOf(in) var tagTmp ="" var whereMap = make([][]string,0) var args = make([]interface{},0) for i:=0;i<vValue.Nu...

2022-05-09 20:03:28 438

原创 Golang-slice:随机删除切片元素

package mainimport ( "fmt" "math/rand" "time")func main() { rand.Seed(time.Now().UnixNano()) slice := []int{0, 2, 3, 4, 5, 6, 7, 8} rm := rand.Intn(len(slice)) slice = append(slice[:rm], slice[rm+1:]...) fmt.Println(slice)}

2022-03-01 18:32:24 463

原创 Golang---interface

2021-12-07 20:00:58 115 1

原创 GoLang基础-语法

2021-12-06 20:37:16 121

转载 PHP生成器yield的使用,节省了大量内存,性能也明显提升

官方解释yieldyield生成器是php5.5之后出现的,官方文档这样解释:yield提供了一种更容易的方法来实现简单的迭代对象,相比较定义类实现 Iterator 接口的方式,性能开销和复杂性大大降低。生成器的核心是一个yield关键字,一个生成器函数看起来像一个普通的函数,不同的是:普通函数返回一个值,而一个生成器可以yield生成许多它所需要的值。生成器函数被调用时,返回的是一个可以被遍历的对象。yield和return有点类似,不过不同的是,return会返回值并且终止代码...

2021-09-02 09:33:13 1052

转载 万一你的Redis主从库宕机了,你就不会恢复了?

Redis主从库宕机,也是可以恢复数据的,这个主要就是你在Redis设置的哨兵模式了。下面我们具体来看看。1、什么是哨兵哨兵是对Redis的系统的运行情况的监控,它是一个独立进程,功能有二个: 监控主数据库和从数据库是否运行正常; 主数据出现故障后自动将从数据库转化为主数据库; 2、原理单个哨兵的架构:多个哨兵的架构:多个哨兵,不仅同时监控主从数据库,而且哨兵之间互为监控。多个哨兵,防止哨兵单点故障。3、环境当前处于一主多从的环境中...

2021-08-31 10:38:07 247

原创 PHP-Thinkphp-微信NATIVE支付不能生成二维码

namespace app\home\controller;use think\Controller;class Qcode extends Controller { /** * 生成二维码 */ public function index() { import('pay.weixin.example.phpqrcode.phpqrcode', EXTEND_PATH); $url = urldecode($_GET["d.

2021-08-27 21:24:31 98

转载 PHP- 大文件断点续传

在现代网站应用中,上传文件是非常常见的。在任何语言中,通过使用一些工具,都可以实现文件上传的功能。但是,如果处理大文件上传的需求,还是有点麻烦的。假如你此时正在上传一个很大的文件,大约一个小时过去了,进度是 90%。突然断网了或者浏览器崩溃了,上传的程序退出,你要再全部重新来过。真的很不爽,对不对?还有更让人郁闷的是,如果你的网速很慢,那么,无论你重来多少次,你都不可能上传成功。在 PHP 中,我们可以尝试利用 tus 协议的断点续传功能来解决这个问题。什么是 tus?Tus...

2021-08-26 10:04:21 229

原创 PHP-依赖注入

1,依赖注入可以有效的减少代码之间的耦合性2,有效分离对象和它所需要的外部资源class Person{ /** * 依赖:Person类依赖obj类 * 注入:Car注入Person * @param $obj */ public function buy($obj) { return $obj->pay(); }}<?phpnamespace di;class Car{..

2021-08-24 23:00:07 989

原创 ThinkPHP-运算符与SQL运算符对照表

2021-08-24 10:13:48 94

原创 PHP-注册树模式

1,注册树模式是通过将实例化对象放到一颗全局的对象树上(池子冲)2,需要用的时候从注册树上(池子中)直接取<?phpclass Register{ /** * 注册树池子,存储对象 * @var null */ protected static $objects = null; /** *将对象挂到树上,将实例化的对象放入池子中 * @param $key * @param $objects

2021-08-22 23:12:03 328

原创 PHP - 单例模式

1,一个为静态的变量2,一个为private构造函数3,一个可以访问实例的静态方法class Instance{ static public $instance = null; private function __construct() { } /** * 单例模式 * @return Instance|null */ public static function getInstance() {

2021-08-20 23:40:53 63

转载 一张百万级别的表,一般如何做查询优化

我们先从存储引擎聊起,两种查询引擎查询速度(myIsam 引擎)InnoDB中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行。MyISAM只要简单的读出保存好的行数即可。值得注意的是,当count(*)语句包含where条件时,两种表的操作有些不同,InnoDB类型的表用count(*)或者count(主键),加上where col条件。其中col列是表的主键之外的其他具有唯一约束索引的列。这样查询时速度会很...

2021-07-13 10:17:48 847

原创 PHP 根据身份证号识别 - 星座,生肖,性别

class IDCard{ public static function getXingZuo($cid) { // 根据身份证号,自动返回对应的星座 if (!self::isIdCard($cid)) { return ''; } $bir = substr($cid, 10, 4); $month = (int) substr($bir, 0, 2); $day .

2021-06-30 14:51:29 193 2

转载 MySQL 别再用OFFSET和LIMIT分页了

不需要担心数据库性能优化问题的日子已经一去不复返了。随着时代的进步,随着野心勃勃的企业想要变成下一个 Facebook,随着为机器学习预测收集尽可能多数据的想法的出现,作为开发人员,我们要不断地打磨我们的 API,让它们提供可靠和有效的端点,从而毫不费力地浏览海量数据。如果你做过后台开发或数据库架构,你可能是这么分页的:如果你真的是这么分页,那么我不得不抱歉地说,你这样做是错的。你不以为然?没关系。Slack、Shopify 和 Mixmax 这些公司都在用我们今天将要讨论的方式进.

2021-06-16 17:34:07 122

转载 挤个地铁的功夫,搞懂MySQL事务隔离级别

“隔离级别”出于MySQL四大特性(ACID)中的“I”,也就是隔离性。目的是实现数据、事务一致性“C”。MySQL在多线程并发场景下,可能会出现脏读(dirty read)、不可重复读(non-repeatable read)、幻读(phantom read)这类并发问题,为了解决这些问题,引申出“隔离级别”的概念。谈隔离级别之前,你首先需要知道,隔离得越严实,效率就会越低。隔离就像是生活中那一件件锁事儿,枷锁越多,活得越累。在很多时候,我们都要在二者之间寻找一个平衡点。测...

2021-06-02 09:59:30 102

转载 MySQL最左匹配原则,程序员都得知道的原则

通常我们在建立联合索引的时候,相信建立过索引的同学们会发现,无论是Oracle还是 MySQL 都会让我们选择索引的顺序,比如我们想在a,b,c三个字段上建立一个联合索引,我们可以选择自己想要的优先级,(a、b、c),或是 (b、a、c) 或者是(c、a、b) 等顺序。为什么数据库会让我们选择字段的顺序呢?不都是三个字段的联合索引么?这里就引出了数据库索引的最重要的原则之一,最左匹配原则。在我们开发中经常会遇到这种问题,明明这个字段建了联合索引,但是SQL查询该字段时却不会使用...

2021-05-31 10:03:10 1892

原创 Redis-选择合理的数据结构

2021-05-25 18:12:03 93

原创 Redis-开发规范

2021-05-25 17:50:19 83

原创 redis-RDB AOF

2021-05-25 17:07:13 67

转载 PHP后端是如何实现JWT认证的

什么是JSON Web Token?JSON Web Token(JWT)是一个开放标准(RFC 7519),它定义了一种紧凑且自包含的方式,用于在各方之间以JSON方式安全地传输信息。由于此信息是经过数字签名的,因此可以被验证和信任。可以使用秘密(使用HMAC算法)或使用RSA或ECDSA的公钥/私钥对对JWT进行签名。直白的讲jwt就是一种用户认证(区别于session、cookie)的解决方案。出现的背景众所周知,在jwt出现之前,我们已经有session、cookie来解决用户登录等

2021-05-24 18:24:22 475

原创 redis - RDB

2021-05-24 18:07:09 44

原创 rediso - GEO

2021-05-24 17:56:27 57

原创 redis - 发布订阅

2021-05-24 17:37:41 58

原创 redis-pipline

2021-05-24 17:27:52 48

原创 redis-慢查询

2021-05-24 17:20:40 39

转载 php观察者模式也是挺好用,经常用的?

设计模式,是每个程序员必须知道,必须学习的知识,虽然不算是基础,但是你必须要懂得。介绍你在编程中可能会遇到过,有时一个对象的状态改变会影响很多类的行为,比较典型的就是在购买流程中,购买成功后会影响库存、销量、会通知发货、有的还需要发送短信。购买这个行为在发生变化时需要同时发生其他行为,但是如果写在一起,一旦流程发生变化,改起来会比较麻烦,将这些行为写在一起的耦合度也太高,观察者模式可以解决这个问题,通过观察者和状态主题互相注册的方式,使主体在发生变化时能够通知观察者,两者组合在一起,..

2021-05-21 10:19:39 130

转载 PHP与Go语言之间是如何通讯的?

在工作中遇到这么一个场景,php项目中需要使用一个第三方的功能,而恰好有一个用Golang写好的类库。那么问题就来了,要如何实现不同语言之间的通信呢?下面就来一起看看吧。常规的方案1、 用Golang写一个http/TCP服务,php通过http/TCP与Golang通信2、将Golang经过较多封装,做为php扩展。3、PHP通过系统命令,调取Golang的可执行文件存在的问题1、http请求,网络I/O将会消耗大量时间2、需要封装大量代码3、PHP每调取一次...

2021-05-21 10:02:25 669

转载 3年的PHP,该学Go吗?

身边很多朋友都从PHP 转到了Go 语言,也还有一些正在观望Go发展趋势的。偶然看到有人说, Go 语言目前的火爆可能就是昙花一现而已。这个观点我当然是不认同的。如果你对 Go 的发展趋势还不明朗的话,不妨仔细看看我后面说的。在 TIOBE 近一两年的榜单中,Go 语言在前 20 位中,总体呈现稳中有升的趋势,2020年 3 月又一次冲进前十。而在国内,没有哪个大厂不做 Kubernetes,微服务和Serverless,这些正是云原生语言 Go 的主场。目前大热的区块链,以...

2021-05-21 09:54:56 346

转载 用户互粉与取关功能,你用php如何做到的?

最近在写api的时候要实现一个相互关注的功能,发现如果用mysql做查询不是很理想,所以用redis来实现这个功能,网上一搜有很多实现的方法,下面主要来看看关注与取关是如何实现的数据库表数据库的代码,通过保存用户的id和关注对象的id以及关注状态来判断用户的关注列。表和粉丝列表,通过联查获取用户的基本信息,入头像、名称。'DROPTABLEIFEXISTS`shc_sns`;CREATETABLE`shc_sns`(`sns_id`int(11)NOTN...

2021-05-21 09:24:10 372

转载 MySQL 主从复制解决了什么问题?如何解决同步延迟问题?

主从复制解决的问题 数据分布:通过复制将数据分布到不同地理位置 负载均衡:读写分离以及将读负载到多台从库 备份:可作为实时备份 高可用性:利用主主复制实现高可用 复制原理复制的原理其实很简单,仅分为以下三步: 在主库上把数据更改记录到二进制日志binary log中,具体是在每次准备提交事务完成数据更新前,主库将数据更新的事件记录到二进制日志中去,Mysql会按照事务提交的顺序来记录二进制日志的。日志记录好之后,主库通知存储引擎提交事务。 .

2021-05-21 09:11:44 109

原创 MySQL 不推荐使用 join是有原因的

1.对于mysql,不推荐使用子查询和join是因为本身join的效率就是硬伤,一旦数据量很大效率就很难保证,强烈推荐分别根据索引单表取数据,然后在程序里面做join,merge数据。2.子查询就更别用了,效率太差,执行子查询时,MYSQL需要创建临时表,查询完毕后再删除这些临时表,所以,子查询的速度会受到一定的影响,这里多了一个创建和销毁临时表的过程。3.如果是JOIN的话,它是走嵌套查询的。小表驱动大表,且通过索引字段进行关联。如果表记录比较少的话,还是OK的。大的话业务逻辑中可以控..

2021-05-21 09:03:32 684

原创 redis - set

127.0.0.1:6379> sadd php 1 2 3 4(integer) 4127.0.0.1:6379> scard php(integer) 4127.0.0.1:6379> smembers php1) "1"2) "2"3) "3"4) "4"127.0.0.1:6379> spop php"3"127.0.0.1:6379> smembers php1) "1"2) "2"3) "4"

2021-05-20 17:33:42 52

原创 redis--list

2021-05-20 17:05:24 63

原创 redis-hash

2021-05-20 16:11:54 74

原创 redis-字符串

1.计数器批量操作

2021-05-20 15:25:04 56

原创 PHP-依赖注入

1,依赖注入主要用来减少代码间的耦合2,有效分离对象和它所需的外部资源<?phpnamespace di;class Person{ public function buy($obj) { /** * 依赖:Pserson类依赖 Car类 * 注入: */ $bmw = new $obj; return $bmw->pay(); }}.

2021-05-17 10:23:51 149

原创 PHP-注册树模式

1.注册树模式通过将对象实例注册到到一个全局的对象树上2.需要用的时候从对象树上采摘下来使用使用场景:将一些常用的基础类库,比较零散的类库,通过注册树模式挂载到注册树上面,在使用的时候直接获取,便于管理例如:DB,cache类库注册树类:Register<?phpclass Register{ /** * 注册树池子 * 将实例对象挂载到 $objects * @var null */ protected static

2021-05-10 10:52:48 213

yii-guide-2.0-zh-cn.pdf

YII2中文框架PDF文档,有需要的可以看下,官方网站也有!纯属方便自己看,如有侵权请告知,谢谢!!!!

2020-08-28

空空如也

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

TA关注的人

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