自己封装一个加锁的类<?php// 增加redis锁 避免同时下单class Rlock {   // $scene 为场景值 随意填写     protected $lockId;// 记录加锁的客户端id     public function __construct() { &nbs...
日期:2023-01-06 浏览:914次 评论: 0 阅读全文
一、分布式锁概述         在分布式环境下,各个线程通过对公共资源的抢占,能够使一个代码块在同一时间只能被一个机器的一个线程执行,这个机制就是分布式锁。         分布式锁主要用于在分布式环境中保护跨进程、跨主机、跨网络的共享资源实现互斥访问,以达到保证数据的一...
日期:2023-01-06 浏览:617次 评论: 0 阅读全文
/**      * 使用redis中setnx防止并发二次写入      * @return bool      */     public function lock()     {        &nbs...
日期:2023-01-06 浏览:589次 评论: 0 阅读全文
第一步:使用composer安装上扩展 composer require phpoffice/phpspreadsheet 导出     //依赖注入     protected $userModel;     public function __construct(\app\admin\model\User $user)     ...
日期:2023-01-02 浏览:607次 评论: 0 阅读全文
追加方法:     /**      * [readExcel 往Excel表插入数据]      * @param  [array] $data      [数据]      * @param  [string]&nbs...
日期:2023-01-01 浏览:563次 评论: 0 阅读全文
看到很多网站程序安装都是用install页面来安装,前几天学习制作了php+mysql的留言板,其中的配置文件都是手工打开配置填写的,今天我们简单的分析一下网站程序自动安装的原理! 制作思路: 1、创建填写数据库服务器的基本信息表单;2、将填写好的数据写入到网站的基本配置文件config.php中;3、删除安装文件。 建立填写表...
日期:2022-11-17 浏览:653次 评论: 0 阅读全文
跨域 跨域就是请求的url中的“协议”、“域名”、“端口号”其中任何一种不一样都是属于跨域。解决跨域的主要的四种方法是jsonp、跨域资源共享CORS(Cross-Origin Resource Sharing)、proxy代理、webpack中间件。 jsonp解决跨域 jsonp只能解决get方法。 在这里设置两个不同的域名,即http://localhost:3000与http://localhost:3...
日期:2022-10-29 浏览:663次 评论: 0 阅读全文
<?php  $dbConfig = require_once(dirname(__FILE__).'/config.php');    class Db{      public $conn;      private $host = null;      private $user &...
日期:2022-10-28 浏览:985次 评论: 0 阅读全文
function removeEmoji($text) {         $clean_text = "";         // Match Emoticons         $regexEmoticons = '/[\x{1F600...
日期:2022-10-23 浏览:767次 评论: 0 阅读全文
php实现进度条主要有两种方式,一种是利用“输出缓冲控制”直接输出进度条,还有一种是ajax方式 首先说一下“输出缓冲控制”方式: 该方式主要利用php的几个缓冲函数,该方式可以不用更改配置文件,直接运行即可,下面贴出代码: <?php set_time_limit(0);  //设置程序执行时间 ignore_user_abort(true);&nbs...
日期:2022-10-09 浏览:654次 评论: 0 阅读全文