php
小黑雷
要记住东西太多再好的记性也会又忘记的一天,记录一下,以后也可以在回头观看自己走的路程。心情好东西项目不是特别赶才会写 - 已经搬到其他平台去了
展开
-
针对ojs安装出现问题
ojs小白注意事项原创 2023-02-27 18:29:54 · 819 阅读 · 10 评论 -
oss删除当前时间前两天的所有文件
oss删除文件大家都会,删除目录几乎差不多,但是删除目录包含子文件夹也是差不多的。这里借鉴oss官方提供的大部分代码简单实现的脚本原创 2022-07-26 10:13:05 · 947 阅读 · 0 评论 -
php判断数组键值存在,函数之间微妙的关系
php判断数组一个键是否存在,之前习惯了用isset去判断例如我有下面一个数组$data{ "authors":"", "authorsName":"Yu", "categoryIds":[ ], "coverImage":null}值分别是空,有值,空数组和null,使用isset($data['authors']) 返回trueisset($data['authorsName']) 返回trueisset($data['categor原创 2022-04-11 11:00:24 · 435 阅读 · 0 评论 -
tp6多文件上传获取报错问题
tp数组形式多文件上传 直接获取会报错,但是\request()->file()不会,例如表单又file[0]没有上传文件,file[1]上传了那么直接获取\request()->file('file')会报错。更加别说\request()->file('file')[1]了但是可以通过循环$allfile=\request()->file();$i=0;foreach($_FILES['file']['name'] as $key=>$val){原创 2022-04-11 00:45:36 · 914 阅读 · 1 评论 -
php 编辑无标记pdf
php关于pdf这块文档简直少的可怜!具体实现的引用的库FPDF下面以laravel为例子做实现说明,具体思路就是首先获取pdf要修改的位置,可以填充原创 2022-01-25 15:47:21 · 606 阅读 · 0 评论 -
windows入门Elasticsearch(es)之(5)php laravel实战
1:首先下载一个laravel框架:composer create-project --prefer-dist laravel/laravel esdemo出现successfully表示安装ok了2:安装php es扩展composer require elasticsearch/elasticsearches对应官方文档地址:https://www.elastic.co/guide/cn/elasticsearch/php/current/_installation_2.html原创 2021-10-25 16:37:41 · 253 阅读 · 0 评论 -
php项目使用docker打包成镜像
docker这个不好说,和K8s分家了,但是还是写一下吧,刚好最近有时间1:docker安装这个我就不用说了,我想大家应该直接参考官网可以摸索出来我觉得还是贴一个连接比较好,做事就得洗浴全套:https://zhuanlan.zhihu.com/p/82269806不建议windows上打包,但是环境还是可以写的,因为当时windows就是一个错误把我难住了,最后放弃了第一步我们首先在我们的项目目录下创建...原创 2021-01-26 11:03:23 · 1766 阅读 · 1 评论 -
mysql 判断数据库是否存在
laravel 使用db不怎么方便,使用原生的时候就使用 $connection = new \mysqli( env('RANCHER_DEV_MYSQL_HOST'), "root", env('RANCHER_DEV_MYSQL_PASSWORD', '') );判断某个库是否存在mysql里面SELECT * FROM infor原创 2021-01-08 20:54:30 · 1632 阅读 · 0 评论 -
文件安全之只允许网站内打开,禁止单独打开下载
有时候我们并不想一个网站文件,禁止单独打开,举例:ios潮汐的音频文件,按道理都是收费的,肯定禁止别人通过某些手段获取到文件,但是潮汐目前大部分都能在web里面抓包抓取到,并且提取出来这么防止这种数据安全呢?今天就拿我唯一玩的比较熟悉的语言php做一个demo释放:1:首先,我们就拿laravel框架举例,我在项目app文件夹下新建了一个文件default_thumb那么文件目录如下图2:就是新建一个控制器...原创 2020-12-31 15:55:56 · 1752 阅读 · 0 评论 -
docker之kubernetes创建代码服务之创建命名空间(namespaces)
接上一篇项目,项目下肯定有很多命名空间下面就是创建命名空间的方法组装/** * 创建项目下命名空间 * @param string $colony_key 集群名称 * @param string $project_key 项目名称 * @param string $namespace_key 命名空间唯一标识 * @param string $name 命名空间别名 * @param string $environment_type 开原创 2020-12-03 15:36:47 · 345 阅读 · 1 评论 -
docker之kubernetes创建代码服务之创建项目(projects)
最近手撸了一下K8S对自己带入了一个全新的东西里面一样,废话不多说,结合K8文档应该能看懂的首先来个项目数据拼装,没有使用yaml,因为那个有点 /** * 创建项目数据组装 * @param string $projectNameKey 项目唯一key * @param string $colonyKey 集群唯一key * @param string $projectRelName 项目昵称 * @param string $desc 项目描叙原创 2020-12-03 15:11:14 · 536 阅读 · 0 评论 -
十月cms系统学习之安装
第一步运行下面的命令,会创建一个myoctober的项目composer create-project october/october myoctober注意:php版本问题别说1:运行可能会提示phpunit/phpunit-mock-objects和另外一个已被弃用不用管2:可能会报php内存溢出错误,2.1:解决方法1:修改memory_limit=-1(不限制)2.2:解决方法二:php -d memory_limit=-1 composer installtryC...原创 2020-12-03 14:19:35 · 296 阅读 · 0 评论 -
记录composer慢解决方法
今天有点难受网真的有点差,以前只修改国内镜像就可以,突然行不通了第一步:修改为并行下载composer global require hirak/prestissimo(并行下载)第二部换镜像:常见的镜像:1:laravelchina镜像:composer config -g repo.packagist composer https://packagist.laravel-china.org2:国内镜像composer config -g repo.packagis.原创 2020-10-14 17:33:23 · 181 阅读 · 0 评论 -
laravel使用jwt错误
laravel6报错但是不现实debug,设置为true也不起作用最后直接看日志报jwt错误,如下面转载的解决办法但是debug不展示是composer安装的时候出现问题,才会出现配置Laravel和jwt时,需要登录后的操作一直出现以下错误:Symfony\Component\Debug\Exception\FatalThrowableError: Argument 3 passed to Lcobucci\JWT\Signer\Hmac::doVerify() must be an转载 2020-09-18 13:49:16 · 1467 阅读 · 0 评论 -
php网页生成截图
最近没时间学习go,手上事情比较多,网页截图基本我知道的有三种,主要一个前端nodejs实现,另外一个第三方组件这里主要说phantomjs,为撒说她,因为不存在清晰度丢失什么乱七八糟的毛病,windows和centos上安装可以参考github上的说明怎么说名安装成功呢,windows直接在命令行窗口里面任何未知敲这个phantomjs出现如下图windows主要注意环境变量就可centos也是类似,centos主要注意权限问题如果上面都成功了那就下面贴出截图代码,/*.原创 2020-09-02 11:11:55 · 603 阅读 · 1 评论 -
php计算日期数组中连续的天数
接上一篇文章的签到那个统计有一个算出连续签到就要去日志表获取一段时间内的数据,例如如下json数组[{"oneday_time":1588435200,"oneday":"2020-05-03","week":"0","weektext":"周日","morning":1588455858,"morninghour":"05:44"},{"oneday_time":15885...原创 2020-05-08 16:15:11 · 709 阅读 · 0 评论 -
js, ajax或者vue,axios跨域被阻止 CORS 头缺少 'Access-Control-Allow-Origin'
今天ajax请求域名的时候出现已阻止跨源请求:同源策略禁止读取位于 http://www.zuimeimami.com*****的远程资源。(原因:CORS 头缺少 'Access-Control-Allow-Origin')。解决办法1:var url='http://localhost:8080/WorkGroupManagment/open/getGroupById"原创 2016-05-19 15:43:11 · 110167 阅读 · 6 评论 -
企业怎么给指定用户转账
正常开发的时候,我们都是用户在商城买东西付款给平台,但是如果设计到分销提现不走线下走线上,或者直播平台直播用户打赏给主播(钱到账到平台下),主播提现的时候要很快到账不用跑银行那么麻烦,就设计到企业付款到用户。例如我画一下上面的两个举例:大概流程图就这个样吧,将就着看,但是很多小伙伴估计大都数为了不记录账本数据,防止**查所有都会走线下,因为分销金额动不动过万的,企业流水多交的就多...原创 2020-04-24 11:30:43 · 1233 阅读 · 0 评论 -
token加sign加签名实现app和web接口安全验证
最近csdn改版,有点不适应改版的后台,觉得没有以前发博客方便了:废话不多说直接说内容吧,接口风格有很多种,但是到最后还是会走到安全验证这里其他验证我就说了,汽车有bba互联网就拿b(百度)t(淘宝)t(腾讯)来说吧!虽然我不知道他们内部的安全验证怎么走的,但是调用三家sdk接口之后我回过头也看了原声的api:共同点:1:ascii码排序这个是逃不掉的,2:返回数据格式CONT...原创 2020-03-31 12:32:42 · 1314 阅读 · 0 评论 -
thinkphp6 where查询时候出现字段对比字段处理方法
这个有thinkphp官方其实给出了方法,那就是->where("字段1 =字段2")而使用->where(["字段一","=","字段二"])是不行的字段二会自动过滤成字符串还有一种方法:修改查询model循环查询条件,值不为数组增加一个where例如条件$where =[['字段1','=',1],"字段一 =字段二"];$result=$this->...原创 2020-03-01 02:59:10 · 3940 阅读 · 0 评论 -
小白thinkphp6玩转laravle6第一篇
大多数情况下拿到都是基于别人的项目组修改这时候查看laravel版本:php artisin --version再去laravel china社区查找对应的文档,什么都是开头一篇文档其他全靠摸索至于composer现在安装直接还是按照tp的来就够1:首先习惯于tp是应为多模块化开发下面laravel怎么使用:首先执行:composer dump-autoload1.1...原创 2020-01-20 16:48:28 · 1365 阅读 · 0 评论 -
thinkphp6+swool4.*示例
1:首先确定php安装环境,是否有swool扩展2:安装thinkphp的swool扩展git地址:https://github.com/top-think/think-swoole参考文章:https://segmentfault.com/a/1190000019385216?utm_source=tag-newest3.windows上安装swooleCygwin 官...原创 2020-01-20 16:25:29 · 2173 阅读 · 0 评论 -
thinkphp6动态修改.env配置
直接贴方法吧:首先例如修改下图配置 已知值$val=array(1,2,3);需要修改上图的值limitonegoods为$val $val=json_encode($val,JSON_UNESCAPED_UNICODE);Env::offsetSet('USERGOODS.LIMITONEGOODS',$val); $envPath = root_path() . ...原创 2019-12-25 12:03:20 · 5619 阅读 · 1 评论 -
针对tp6model查询失效给出范例
/** * author:leishaofa * date:20190916 * effect:查询指定条件的单条文章 * */ public function getwhereone($where){ try{ $result=$this->where($where)->find...原创 2019-10-30 11:32:28 · 1110 阅读 · 0 评论 -
没事写写tp6验证码模式
生成流程1:首先明白大概怎么生成,首先生成随机你设置的字符串,或者公式1.1生成字符串之后:mb_strtolower转成小写1.2生成的算数计算出结果2:在password_hash(1中结果, PASSWORD_BCRYPT, ['cost' => 10])3:存入session,注意设置过期时间4:画图,并且设置画图相关参数,什么宽高,背景,扰乱的点,字体。画图...原创 2019-10-14 17:11:06 · 877 阅读 · 0 评论 -
laravel 5.8使用JWT
首先进入你的laravel项目目录下,composer require tymon/jwt-auth:1.0.0-rc.4.1//如果php没有全局安装,composer是离线版那就下面的吧:php路径 composer.phar路径 植入的组件/usr/local/php/bin/php /home/lei/www/composer.phar require tymon/jwt-aut...原创 2019-05-28 16:51:15 · 3193 阅读 · 0 评论 -
thinkphp3.2升级至thinkphp5.1
view文件#修改文件名#把tp3.2.3\app\module\view文件夹下所有文件夹拷贝至tp5\app\module\view 打开cmd命令窗口,cd至view文件夹下,执行dir /b 1.bat 使用notepad++打开1.bat,使用正则替换,将(^.*$)替换为ren $1 \L$0。 保存1.bat,双击执行修改标签#正则:<foreach(.*...转载 2019-06-21 10:29:38 · 3584 阅读 · 0 评论 -
关于redis消息队列
文章为何要写:19年7月29号昨天去面试武汉××科技公司了,可能当时没有理解面试管要问的是php代码分布式部署情况下,先不谈这个啊!不过这个也让我唯一觉得面试问道的问题学到东西的公司。首先我们来聊聊我们对话:A:你能先做一个简单的自我介绍吗?巴拉巴拉。。。负责一个商城秒杀部分的代码,使用rebbitmq处理用户的秒杀:我A:你能说说大概处理逻辑吗首先前台做了一个倒计时,做了前台...原创 2019-07-30 18:08:29 · 188 阅读 · 0 评论 -
说说使用宝塔部署thinkphp6的坑吧!
下面两部网上很多但还是说一下这一步很重要不然网站首页都进不去这里建议重启一下nginx服务还有记得改了配置,先重启之后在重载错误信息,display_errors=on默认开启的,display_startup_errors默认关闭打开完事,之后重启fpm重载配置tp6坑控制器首字母大写这个就不说了,但是view的文件夹对应的控制器文件夹要小写,不然view找不...原创 2019-09-03 18:20:30 · 6908 阅读 · 1 评论 -
php替换html里面的内容
已知下面一段html$a="<p><img src=\"/upload/store/1/ue/image/1568282125833264.png\" title=\"1568282125833264.png\" alt=\"1.png\"/><img src=\"http://dimg04.c-ctrip.com/images/300q12000000rq2t...原创 2019-09-18 20:51:37 · 3104 阅读 · 0 评论 -
PhpSpreadsheet使用笔记
这是2019年8月29号写的,当时正在离职交接中,接到一个面试电话打断了就没有写了,今天发文章看到了,所以直接发出来,后面demo例子在补全,不过看了一下大概也差不多先列出数据[{"username":"雷子","mobile":"18771156578","province_name":"湖北省","city_name":"武汉市","wx_openid":"obo_nvoxQuctm...原创 2019-09-18 20:56:32 · 1753 阅读 · 0 评论 -
thinkphp6数据批量更新
$sql="UPDATE $this->table SET "; $primarykeyfield="id"; $updatekeys=array_keys($data[0]); $sql.=array_reduce($updatekeys,function($a,$b) use ($data,$primarykeyfield){...原创 2019-09-26 19:15:57 · 10848 阅读 · 0 评论 -
symfony前后台分离
现在毕竟大部分项目还是企业站类型的,单独又创建一个显得不怎么合理了,那么就要在一个框架里面相当于创建多个bundle,也就是前台后台在一个框架里面,在一个框架里面有两张方法,第一种当然是最懒,开发当时方便的方法,所有写到一个bundle里面,在控制器里面做一下区分,还有一种就是创建多个bundle,我开始也是看文档看半天看不懂,一个小的英语不怎么好的原因吧!只有慢慢试,总算创建成功了,下面贴一下代原创 2016-03-02 13:18:19 · 1547 阅读 · 0 评论 -
小程序调用API发起微信支付
下面事整体代码就是统一下单,微信小程序调用wxpay()这个方法获取到数据 下面查询 $orderdetails返回结果一个价格:totle一个内部订单号:order_no内部定义的支付类型(自己想怎么取就怎么取,可要可不要):pay_type_text再就是config('WX_APP')['wx_appid']这个读取自己配置的appid/** * auth...原创 2018-12-26 13:54:15 · 1364 阅读 · 0 评论 -
mysql查询某个id在表中是第几条数据,并且在第几页
对于一般的企业站内说文章不多但是设计中详情又有返回,可能很多都是记录的,这条数据在第几页。但是还有一种情况如果还有上一篇下一篇,刚好这篇文章在当前页的最后一篇那返回就没有效果了例如我有表a,字段有:id int(key),title varchar(64) (文章标题),category int(类别), is_top char(1)(是否置顶),toptime int(置顶时间)解...原创 2018-12-19 16:37:33 · 10444 阅读 · 0 评论 -
截取文章字符串神略号结束
/** * 截取神略号显示*/function subtext($text, $length){ if(mb_strlen($text, 'utf8') > $length) return mb_substr($text, 0, $length, 'utf8').'...'; return $text;}原创 2016-11-11 15:57:11 · 288 阅读 · 0 评论 -
php 二位数组排序方式
例如我们都是按id来升序排序$list=array{array(id=>21,name=>"aa"),array(id=>24,name="afds",),array(id=>28,name=>"faaa"),array(id=>14,name="safd",),array(id=>19,n原创 2016-11-10 15:12:34 · 453 阅读 · 0 评论 -
php经典算法
php经典算法 1.冒泡算法,排序算法,由于在排序过程中总是小数往前放,大数往后放,相当于气泡往上升,所以称作冒泡排序 $array =array(a,f,c,b,e,h,j,i,g); function maopao_fun($array){ if($len <= 1) { return $arr; } ...转载 2016-07-07 14:39:01 · 370 阅读 · 0 评论 -
symfony分页实现方法
一个分页让我无语了好长时间,找了各种资料,就是不知道怎么入门,官方文档又没有说,这里说一下吧!@姐的世界,尔等怎么会懂这里还的多亏美女帮助呀!好了言归正传:symfony分页是要用到组件的,symfony的核心就是善于使用别人的代码愉快的做一个程序员所以这里使用KnpPaginatorBundle实现翻页运行命令拉去组件composer require "knplabs/k原创 2016-02-22 16:30:20 · 3773 阅读 · 0 评论 -
symfony生成数据库表实体
两天接触发现symfony真的蛮牛掰的,之前纠结学laravel还是symfony哪一个好一点,学了laravel一个星期发现文档学习资料太少了,立马转向symfony发现他和laravle功能差不多,所以之前一个星期看的laravle没有白看。但是今天发现一个很好的功能,更java差不多,开心了一阵子,下面来分享一下,怎么像java一样自动轻轻几下,就自动生成了数据库表实体我用的是symfo原创 2016-01-19 11:48:51 · 2224 阅读 · 0 评论