php
文章平均质量分 67
进击的架构狮
玩过python,学过java,打过JAVASCRIPT,弄过linux,用过PHP,折腾过mui,vue,thinkphp,搞过ecshop,socket,tpshop,织梦,dedecms。
不是大神,只是代码的搬运工。一直在学习的路上,奔跑吧,蜗牛!
展开
-
PHP垃圾回收机制
垃圾回收,简称gc。顾名思义,就是废物重利用的意思。再说这个之前先接触一下内存泄露,大概意思就是申请了一块地儿拉了会儿屎,拉完后不收拾,那么那块儿地就算是糟蹋了,地越用越少,最后一地全是屎。说到底一句,用了记得还。一定程度上说,垃圾回收机制就是用来擦屁股的。如果用过C语言,那么申请内存的方式是malloc或者是calloc,然后你用完这个内存后,一定不要忘了用free函数去释放掉,这就是传说中手动垃圾回收,一般都是扫地神僧用这种方式。很多高层次语言中,你这辈子都是接触不到内存管理的,比如世界上最好的语言p原创 2022-01-20 15:30:51 · 520 阅读 · 0 评论 -
认识Zval
什么是ZvalZval是PHP中变量的结构体结构体结构体: {key,value,ref_count,is_ref,type}翻译后的结构体:{键,值,使用计数器,引用计数器,类型}有哪些类型IS_NULL, IS_LONG, IS_STRING, IS_ARRAY, IS_OBJECT赋值和引用每当我们新建一个变量的时候,操作系统都会开辟一份空间通过结构体将变量存储起来。那么相同的键值进行建立那么会使系统显得笨重起来(意味着每次操作都要开辟空间生成变量),那么这时候引入了赋值和引用原创 2022-01-19 23:53:40 · 379 阅读 · 0 评论 -
PHPEXCEL批量导入到数据库处理方式
使用php导入EXCEL文件经常会遇到的问题就是服务 500 或者是超时,或者是资源不够用。可使用以下方式去处理1.首先先将EXCEL转换成csv格式2.可以选择使用异步处理方式。分批异步处理,主程序如下:function asynRun($param){ $url = 'http://test.com/asynRun.php'; $urlinfo = parse_url($url); $query = isset($param)? http_build_query($par原创 2020-11-17 17:48:52 · 565 阅读 · 0 评论 -
swoole-task-channel-连载4
答题小程序中有一个是需要检测游戏状态的任务就时时刻刻检测游戏当前的状态,比如处理用户异常掉线检测,游戏结束检测,强制答题,机器人答题等,这个任务主要是为了保持游戏的完整性而开发的既然是一个任务,那么需要开启一个task协程去处理task官方文档介绍,task任务主要处理的是耗时的任务,那么用他开启游戏检测是再好不过的了。channel在task任务中,我是使用了channel管道去实现检测,一协程专门做检测,一协程专门做处理业务下面的是部分代码public function run($ser原创 2020-06-29 16:42:45 · 197 阅读 · 1 评论 -
swoole-整合thinkphp5.1-连载3
基于thinkphp5.1进行整合swoole。此篇文章涉及的知识点有点多。值得注意的是:这篇文章不是单单整合swoole服务端,还包括模型整合,redis协程开发等。基础搭建基于thinkphp5.1开启socket服务,我这里使用了自定义服务类在config文件夹配置里面加入PHP配置代码<?php// +----------------------------------------------------------------------// | ThinkPHP [ WE CA原创 2020-06-28 15:48:33 · 575 阅读 · 0 评论 -
swoole-服务流程图示-连载2
介绍了概念,只是初步了解了swoole的作用,下一步进行使用图示来介绍一下swoole的运行流程。下面图是官方的图运行流程图进程 / 线程结构图原创 2020-06-24 17:17:03 · 200 阅读 · 0 评论 -
swoole实战-概念篇-连载1
swoole真的是程序员进阶的好扩展,毕竟PHP都是单线程编程,无外乎就是学一下CURD和框架,最多再研究深入一下框架编写和设计模式等。看到swoole真的是各种扩展内容和更多的延伸,就比如socket服务器,协程,异步任务等功能。这些功能可以使PHP面向的方向更多了,所以学习过程中,必须要笔记。...原创 2020-06-24 13:47:28 · 255 阅读 · 0 评论 -
PHP多线程学习pthread
遇到的问题如果遇到无法启动此程序,因为计算机中丢失pthreadVC2.dll系统64位系统应将pthreadVC2.dll复制到C:\Windows\SysWOW64中,而不是C:\Windows\System32为什么在window没办法运行PHP7.0版本的多线程7.0版本的pthreads已被重写,只支持使用cli下载资源路径官方多线程扩展下载链接-支持PHP版本5.3~7.0PHP各个版本下载...原创 2020-06-03 17:32:44 · 480 阅读 · 0 评论 -
答题小程序模式架构
最近公司接到一个项目,仿头脑王者模式开发一个小程序出来。我心想,如此大的一个项目如何才能够去完美的架构开发出来。一开始是毫无头绪的,但是把需求和玩法整理一遍,似乎也就那么回事,该篇文章只介绍答题模式的架构,其他的小功能不在这篇文章展示了。下面是以PHP的代码进行架构与分析架构流程需求分析原始需求排位赛计时赛难度赛互选赛流程图和思维导图(略)代码架构技术选型问题分析与解决方案(部分代码)控制流程代码(工厂代码)玩家游戏状态控制对战基础文件答题者代码排位赛遇到的问题小结需求分析原始需求排位赛1)原创 2020-05-13 15:56:50 · 1125 阅读 · 0 评论