首页 技术PHP

PHP

  • PHP 抢红包的一些实现思路

    最近探索了关于抢红包的一些实现思路,在此记录下本篇文章主要探讨了金额随机算法关于分布式锁的一些探索我们开始,首先说下抢红包的业务流程,分为两步,发红包和抢红包,在抢红包的时候,并发是非常大的,我们这里采用redis作为中间件来实现高并发的抢红包流程关于红包的随机生成算法,我们采用“二倍均值法”来生成随机的红包金额并先存下来此算法的核心思想是根据每次剩余的总金额M和剩余人数N,执行M/N再乘以2的操作得到一个边界值E,然后指定一个从0到E的随机区间,在这个随机区间内将产生一个随机金额R,此时总金额M将更新为M-R,剩...

     薄洪涛  2020-11-08  41浏览  0评论
  • PHP Yii2使用phpOffice导出excel报错

    线上导出excel的时候,是不是出现无法访问,如下图因为导出的数据量比较大,我怀疑是内存溢出,于是增加了内存分配值,发现仍然报错,于是我查了下日志,如下2020-08-14 21:31:12 [192.168.8.12][-][-][error][PhpOffice\PhpSpreadsheet\Calculation\Exception] PhpOffice\PhpSpreadsheet\Calculation\Exception: 2020_08_14!K3314&nbs...

     薄洪涛  2020-08-14  173浏览  1评论
  • PHP Laravel中灵活使用Trait

    这次我们来学的是Trait,说到Trait ,大家的印象可能就是复用一直以来,我对复用的理解就是写一个公共类/文件,通过继承/require 来实现复用,那里需要就哪里继承/ 引用,目的就是少写代码我们先来举个例子,使用继承来复用代码// 首先实现控制器的基类,这里实现公共方法common namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; class BaseCo...

     薄洪涛  2020-08-13  131浏览  0评论
  • PHP php redis Hash操作

    //为user表中的字段赋值。成功返回1,失败返回0。若user表不存在会先创建表再赋值,若字段已存在会覆盖旧值。 $redis->hSet('user', 'name', '222'); //获取user表中指定字段的值。若user表不存在则返回false。 $redis->hGet('user', 'realname'); //查看user表的某个字段是否存在,存在返...

     薄洪涛  2020-04-21  275浏览  0评论
  • PHP php使用curl获取elasticsearch中数据

    我最近在做一个电动车的项目,其中,有一个功能是这样的,我需要获取指定车辆的最新的五条位置信息,位置信息是保存到es库中的,我使用的是Yii2.0框架,本来想使用Yii封装的组件去获取数据的,然后觉得麻烦,就使用了curl调接口的形式开始的时候,我是这么写的function httpPost($server_url, $param) {     $ch = curl_init();    &nb...

     薄洪涛  2020-01-14  246浏览  0评论
  • PHP Elasticsearch按照日期聚合

    我们现在做的是医疗的业务,有个需求是这样的,查询出某位医生前七天的坐诊记录,并且,医生的坐诊记录是不连续的,这样就需要写一个dsl语句来实现es库的搜索首先我使用了es库中的聚合功能,按照日期去聚合,相当于mysql中的group by,查询语句和结果是这样的{ "query": { "match": { "ysdm": "000485" } }, "aggs&qu...

     薄洪涛  2019-12-27  267浏览  0评论
  • PHP YII2场景值的使用

    开发的时候添加和编辑写在了一个方法里面,上传图片添加的时候需要验证为空,编辑的时候不需要,这时候yii的场景值能够解决这个问题:控制器中$model = new NewsForm(); $model->scenario = 'add';//指定场景值模型中//接下来是model的写法 public function rules() {   return [   &n...

     Feng  2019-12-26  233浏览  0评论
  • PHP YII2独立开发遇到的坑

        之前开发的时候,遇到图片上传什么的都是直接用前辈们配好的插件等等,换了家公司以后,要自己独立开发项目,顿时遇到了问题,开始是项目的配置,然后在添加的时候遇到了图片上传的问题,开始我以为post提交表单会直接在控制器中获取提交的文件,然后我一直找为什么post提交的图片会为空,经过一段时间的百度和前辈的指导,终于找到了代码和原因,原来提交文件需要另一个方法把东西给拿出来,现在给大家贴出代码: $file = UploadedFile::getInstance(...

     Feng  2019-12-24  208浏览  0评论
  • PHP 七牛上传报文件已存在

    之前做了一个大文件的分片上传,做好之后就没管了,让客户端一直自己用着,然后期间偶尔会有浏览器不兼容的现象我也懒得改,然后十一回来,客户端就给我说,有文件上传不上去,然后正好手头没活,就用改了下先看下思路,这里做了分片上传,就是文件按照一小块一小块分片上传到服务器后,然后拼接,拉到七牛拉到七牛的代码如下/*  * 上传到七牛  */ public static function saveQiniuByUrl($file_url){  &nb...

     薄洪涛  2019-10-08  250浏览  0评论
  • PHP PHP程序猿食用RabbitMQ方法

    消息队列是什么?“消息队列”是在消息的传输过程中保存消息的容器。“消息”是在两台计算机间传送的数据单位。消息可以非常简单,例如只包含文本字符串;也可以更复杂,可能包含嵌入对象。消息被发送到队列中。“消息队列”是在消息的传输过程中保存消息的容器。消息队列管理器在将消息从它的源中继到它的目标时充当中间人。队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用,消息队列会保留消息,直到可以成功地传递它。为什么使用? 主要原因是由于在高并发环境下,由于来不及同步处理,请求往往会发生堵塞,比如说,大量的inse...

     薄洪涛  2019-09-11  272浏览  1评论
1 2 3 4 ››