PHP使用ZipArchive解压文件失败的问题
PHP使用ZipArchive解压正常的zip文件可能会失败,这个问题很诡异。
部分代码:
Home of Little Jelly
PHP使用ZipArchive解压正常的zip文件可能会失败,这个问题很诡异。
部分代码:
ThinkPHP自带的队列组件thinkphp-queue默认60秒超时,好像也没有配置的地方,只能硬改源码了。
文件路径`vendor/topthink/think-queue/src/queue/command/Listen.php`,修改`configure`方法
最近在用一台老电脑上的VSCode做PHP开发时遇到一个很奇怪的问题,保存文件(Ctrl+S)时有些符号和函数会自动跳到下一行。
比如`{`、`}`和`exit()`,一保存就自动跑一行去了,很是烦人。一开始还以为是哪个插件的问题,仔细查看设置发现问题出在编辑器上。
近几年FastAdmin框架用的比较多,它是基于ThinkPHP5的一个框架,在其中使用command,也就是自定义命令非常方便。
最近接手一个项目用到了ThinkPHP6框架,需要使用command来处理一些比较耗时的任务,原框架里并没有使用,那就自己来创建吧。
最近在使用FastAdmin的过程中遇到一个问题,有人反馈后台老是提示登录,有时候是停留时间长了,有的是刚登录没几分钟就掉。
按照之前的经验,先调整php的session回收机制,具体是在php.ini中,主要是以下两个参数
PHP在使用PhpSpreadsheet读取Excel时,可能会遇到读取到的日期变成了数字的问题。
比如在Excel中是2020-03-02,读取后可能就是一个4千多的数字,这个时候就需要用函数来转一下,示例代码如下:
今天在使用钉钉的OpenAPI创建订阅日程时报错了:cURL error 60: SSL certificate problem: unable to get local issuer certificate,有可能是因为使用了较老的SDK,接的别人的二开,不想再折腾新SDK了,看怎么样能把这个错误给解决了。
解决办法有两种:
在使用FastAdmin后台进行记录的添加编辑时,有时会遇到一个字段需要多选的情况,由于列表过长,而且数据是多层级的,用selectpage就不太合适了。
这个时候就需要在一个自定义的页面中去选择这些数据,弹窗打开这个页面,选择完成后,点击确定再回传给父级页面,也就是添加编辑页面。
这个过程需要控制器、模板页面、JS的共同配合。
FastAdmin后台的数据隔离,这个场景最近经常遇到,一个系统分了好多个角色/端,每个角色/端的权限不同,能看到的数据也就不同,这就涉及到数据隔离。
举个简单例子吧,用户角色为平台+业务员+机构+学员的系统,后台角色如下:
1. 系统的最高权限是平台端,能看到所有数据;
2. 业务员负责开拓机构,他能看到机构的数据;
3. 机构发展学员,能看到机构下的学员数据。
我们知道FastAdmin后台列表的操作按钮可以根据条件显示或隐藏,而一列一列的字段是否也可以呢?
答案是可以!
流程: