抽象一下需求: 在构建某个对象时,它拥有多个属性,每个属性拥有多个可选的值,需要穷举出每个属性不同的选择组合构建出的不同对象,比如: 输入参数: $arr = [ ‘Name’ => [‘Jack’, ‘Lily’, ‘Martin’], ‘Age’ => [’18’, ’12’], ‘Gender’ => [‘male’, ‘female’], ‘Address’ => […]
Laravel 8 笔记:队列Queue的使用及扩展知识
具体以redis驱动为例,来介绍如何使用laravel队列,包括一些laravel队列相关的扩展知识,比如多队列的使用,queue:work和queue:listen的区别等。 示例在laravel 8.24 + php 7.4环境运行。 配置连接和队列 在.env里配置好redis配置参数,以及QUEUE_CONNECTION的配置。 REDIS_HOST=127.0.0.1 REDIS_PAS […]
CentOS下为PHP7添加imap扩展
项目需要使用imap扩展读取邮件,由于在之前编译的时候没有装,这里就来独立安装一个这个imap扩展,跟大部分扩展安装流程一样。 进入php安装包解压后的ext/imap目录 cd /opt/temp/php-7.2.21/ext/imap 运行phpize sudo /usr/local/php/bin/phpize 运行编译 sudo ./configure –with-php-config= […]
wordpress文章使用随机字符串作为url中的slug
对于wordpress,它自带的文章url固定连接可选样式有很多,带日期的,文章名,文章ID,但如果想要每一篇文章一个随机字符串的slug(别名,显示在url后面),就要自己动手了,如果你不理解那是怎样的,看看简书的文章详情页的url就知道了。 主题的function.php中加入下面的代码即可: add_filter( ‘wp_unique_post_slug’, ‘unique_slug_so […]
PhpStorm针对项目做的一些配置
PhpStorm是每个php开发者应该去尝试使用的首推IDE,因为它实在是太方便了,针对它使用,前面已经讲到一些: PhpStorm常用配置项 phpstorm使用Setting Repository报错Authentication failed PhpStorm常用快捷键 今天要说到的是针对项目层面应该要做的一些优化,这里以Yii2框架的项目为例。 我们应该排除项目下的runtime目录和ven […]
PHP按指定概率随机获取数组元素
需求 客户跟进项目,当有新客户进入系统,按照指定概率将客户分配给指定员工来跟进,给每个待指定的员工一个概率(概率之和为1),然后按照概率来分配即可。 代码: 新建一个Random类: <?php namespace app\helpers; class Random { /** * 获取浮点随机数 * @param int min * @param intmax * @return int […]