因为工作中常需要发送模板消息,为保证全部人员发送且不能重复发送就使用使用redis的集合来控制
初始版本
<?php
/**
*
* @author Strawberry🍓
* @date 2022-11-15 10:23
*
*/
$list = [
'oMJEL5vKtLcIfyiopvG3NEJZnxaM',
'oMJEL5t9k7KdkpZJlIcPgJkC5w9o',
'oMJEL5unAO5I6vlQlWOQsYfVooCY',
'oMJEL5uHdtUoTa7NJIK_V7lFLAmk',
'oMJEL5jLgHLX5CLljErlxOg9v7ko',
'oj4Bi5KkKYN31X8bVdh_stSWEj-8',
'oMJEL5rnXo53lfbLnvf3QKnvbzT0',
'oMJEL5p2knl2wFdVCIj1d5KWSGI0',
'oMJEL5ucy9tdCg5eQCyz_MUort_8',
'oMJEL5htYndG-0GJvjuX0DVkffUQ',
'oMJEL5kFGXe0TQmtfqQtpEXIfZk8',
'oMJEL5ihQOiLddcoL9ogrSP7B5cs'
];
$key='Pay:MerchantCard:CanReceiveList';
$redis = new \Redis();
$redis->connect('127.0.0.1',6379);
foreach ($list as $key=>$value){
$bool = $redis->sAdd('key',trim($value));
}
数组长度比较大时,foreach写入的的效率非常的慢
改进版本
$list = [
'oMJEL5vKtLcIfyiopvG3NEJZnxaM',
'oMJEL5t9k7KdkpZJlIcPgJkC5w9o',
'oMJEL5unAO5I6vlQlWOQsYfVooCY',
'oMJEL5uHdtUoTa7NJIK_V7lFLAmk',
'oMJEL5jLgHLX5CLljErlxOg9v7ko',
'oj4Bi5KkKYN31X8bVdh_stSWEj-8',
'oMJEL5rnXo53lfbLnvf3QKnvbzT0',
'oMJEL5p2knl2wFdVCIj1d5KWSGI0',
'oMJEL5ucy9tdCg5eQCyz_MUort_8',
'oMJEL5htYndG-0GJvjuX0DVkffUQ',
'oMJEL5kFGXe0TQmtfqQtpEXIfZk8',
'oMJEL5ihQOiLddcoL9ogrSP7B5cs'
];
$key='Pay:MerchantCard:CanReceiveList';
$redis = new \Redis();
$redis->connect('127.0.0.1',6379);
$bool = $redis->sAdd($key,...$list); //返回写入的条数
查看Redis方法