
thinkphp
文章平均质量分 72
gzmyh
这个作者很懒,什么都没留下…
展开
-
thinkphp8框架源码精讲
很开心你能看到这个笔记,相信你对`thinkphp`是有一定兴趣的,正好大家都是志同道合的人。`thinkphp`是我入门学习的第一个框架,经过这么多年了,还没好好的研究它,今年利用了空闲的时间狠狠的深入源码学习了一把,顺便就把学习的过程都记录下来,分享给有兴趣的同学。我阅读源码使用的`thinkphp`版本是最新的版本8,我的目标是对框架源码进行一次全面的解读,目前已经完成了大部分的源码的学习,后续会继续更新更多的笔记。原创 2024-07-10 14:24:58 · 569 阅读 · 0 评论 -
深度分析thinkphp类的自动加载
类的自动加载是框架中非常重要的特性,它允许你在**使用类时无需手动包含或引入对应的文件**。类的自动加载实现起来很简单,只需这样的一个函数`spl_autoload_register`就能实现。但框架都有各自的加载规范,并不是所有类都能被自动加载,因此这节内容大家还可以了解到`PSR-4`的自动加载规范,另外也可以弄明白通过composer引入进来的类是如何被加载的。原创 2024-04-11 13:34:04 · 788 阅读 · 0 评论 -
thinkphp商城系统之商品模块表设计
商品模块是商城项目最核心的模块,也是最复杂的。如果说你能掌握这个模块,那对你来说绝对是获益匪浅,这模块会涉及到以下知识点:1. 聊聊电商领域中的`SPU`和`SKU`2. 表的设计,告诉你为什么要这么设计3. 复杂的查询,例如属性筛选原创 2023-12-12 15:07:07 · 1312 阅读 · 0 评论 -
springboot利用redis过期事件处理过期订单
在开发中我们经常会遇到这样的业务需求,某一条数据需要在xxx时间后处理,比如说未支付的订单,30分钟后过期。能够实现这一功能的技术有很多,但需要你根据系统的大小、业务的量的大小以及公司给到该项目的资源而决定。比如说这是一个大商城,开始之初就已经部署了rabbitmq,那毫无疑问可以使用延时队列实现这一功能。如果说没有提供mq,一般情况下我们就定时轮询订单表了,这是非常最简单的一种实现方式。如果说你怕数据库压力大,那不妨可以选择redis。这篇文章介绍的就是如何利用redis处理过期事件。原创 2023-11-16 13:57:22 · 771 阅读 · 0 评论 -
实力进阶,教你使用thinkphp6开发一款商城系统
本教程打算以一个商城项目为例,会实现后台权限管理、会员管理、商品管理、商品团购、抢购……反正是一些常用的功能都给它实现了。本教程不同于网上的一些视频教程,只是为了实现而实现,说真的网上的一些教程,都是按部就班的实现功能,很少会提及为什么要这样做,这样做的好处是啥,更不用说会踩到什么坑了,因此有些人自学了,效果也好不到哪去。在这个教程中模块与功能的代码实现是次要的,更重要的是我们是如何去规划、设计这些模块,我们要站在一个架构师的角度实现我们的系统。原创 2023-11-18 14:02:41 · 2014 阅读 · 0 评论 -
Thinkphp-商城项目之oss文件上传及web端直传
一般商城网站都会把文件上传到第三方云,例如阿里云(oss),腾讯云(cos),当然如果公司有足够的实力,可以自己部署一台文件服务器,用于文件的保存。原创 2023-11-20 19:54:10 · 736 阅读 · 0 评论 -
thinkphp5下使用WebSocket
最近有个项目需求是这样的:软件端会向服务器发送请求,获取一些信息。然后对获取过来的信息进行处理,再返回信息的id方式一:软件端那边调用接口,一分钟请求一次。问题出现:如果有几万个人同时用软件,就会产生大量的http请求,导致负载过高。因此需求考虑到第二种方式。方式二:使用WebSocket,进行一次长连接,这样就减少了大量的请求。因为对于webscoket要求不高,因此就选择了Wo...原创 2019-05-06 10:19:50 · 17364 阅读 · 2 评论 -
如何防止短信接口被恶意调用
有人是这样做的:用户点击获取验证码时,前端跟后端都做了限制。比如说同个手机号两分钟内只能获取一次。这样的做法跟没限制一样,形同虚设。比如说攻击者随机生成几万个手机号,然后同一时间往这些手机号上发送信息有些人又加了图形验证码。这也是目前最常用的防护方式了,但也有可能被暴力破解,但难度有点大。最近有个项目,说了为了用户体验,发送验证前不要图形验证,所以想到的方法就是ip限制了。...原创 2019-05-15 15:15:03 · 989 阅读 · 0 评论