
PHP Yii2 updateAll是写原生SQL
use yii\db\Expression; self::updateAll([‘prev_status’ => new Expression(‘status’), ‘status’ => self::PLAN_TASK_STATUS_CLOSE], [‘in’, ‘plan_id’, $planId]); // 生成的语句 UPDATE `pa_plan_task` SET `prev_status`=status, `status`=4 WHERE `plan_id` IN (1, 2)
PHP Yii2 AR获取当前查询sql
$query = UserModel::find()->where([‘status’=>1]); echo $query->createCommand()->getRawSql(); // UserModel 为模型
PHP PHP SHA256WithRSA pfx和cer文件方式的加签和验签
提醒:本文最后更新于2021-05-19 22:46,文中所关联的信息可能已发生改变,请知悉! 加签后可以在Java端通过验证 // 全部参数按字母排序 private function dataSortAndKeyVal(array $data) { ksort($data); $strTmp = []; foreach ($data as $key => $val) { $strTmp[] = $key . '=' . $val; } return join('&', $strTmp); } // 加签 private function signData(array $data) { $strKeyVal = $this->dataSortAndKeyVal($data); $sha1 = sha1($strKeyVal); openssl_pkcs12_read(file_get_contents(‘pfx文件路径’), $certs, 'pfx密码'); if (!$certs) return &#…
PHP YII2 ajax post 报400错误
提醒:本文最后更新于2021-05-19 22:47,文中所关联的信息可能已发生改变,请知悉! 处理办法 var csrfToken = $('meta[name=csrf-token]').attr(content); $.ajax({ type: 'POST', url: url, headers:{'X-CSRF-Token':csrfToken}, data: {_csrf:csrfToken}, success: success, dataType: dataType });
PHP yii 2.0.14 报 Headers already sent
提醒:本文最后更新于2021-05-19 22:47,文中所关联的信息可能已发生改变,请知悉! 过程 在控制器里面使用了echo输出文本,最后又用return返回的文本,造成的这个错误 解决 需要echo的文本,全部收集到数组里面,最后一起用return 返回
golang Javascript ,PHP,Java,Groovy,C#,Objective C,Go,Ruby,Python,Perl,Dart,Swift,Rust,Powershell语言HMAC SHA256实现(转)方便API加密对接
提醒:本文最后更新于2021-05-19 23:00,文中所关联的信息可能已发生改变,请知悉! Javascript HMAC SHA256 <script src=http://crypto-js.googlecode.com/svn/tags/3.0.2/build/rollups/hmac-sha256.js></script> <script src=http://crypto-js.googlecode.com/svn/tags/3.0.2/build/components/enc-base64-min.js></script> <script> var hash = CryptoJS.HmacSHA256(Message, secret); var hashInBase64 = CryptoJS.enc.Base64.stringify(hash); document.write(hashInBase64); </script> PHP HMAC SHA256 PHP has built in meth…
服务器 类似Nginx的网关工具 TeaWeb ,支持自建在线端口转发、反代、HTTP隧道等等,支持IP、域名等
TeaWeb是一款集静态资源、缓存、代理、日志、统计、监控于一体的可视化智能WebServer,原理是通过HTTP代理的方式连接用户请求和开发者自己的后端服务,从而不仅实现对请求的转发处理,也可以实现自动的缓存、日志、统计、监控等功能。 TeaWeb使用Go语言实现,在高可定制化前提下,保证高性能、高并发。 基于CentOS 7安装(其他系统也支持) 注:开放7777端口 这个是管理端,如果后续有用到其他端口,请注意开放防火墙 firewall-cmd –zone=public –add-port=7777/tcp –permanent firewall-cmd –reload SSh下,一键安装 curl -s http://teaos.cn/teaweb-install.sh|sudo bash 安装MongoDB,创建.repo文件,生成mongodb的源 vi /etc/yum.repos.d/mongodb-org-4.0.repo 添加以下配置信息: [mongodb-org-4.0] name=MongoDB Repository baseurl=https://…
后端 优惠折扣分摊规则记录一下
近期开发到优惠券功能,需要计算各种类型优惠折扣均摊规则
PHP 七牛云存储清空存储空间的文件
起因: 今天准备删除七牛云的某个存储空间,居然要求要先删除全部文件,看了一下统计发现有上万个文件,手动删除的话要命了 解决办法: 看到七牛云有API,想着通过API自动处理,因此找到了这个程序 用法: 需要有PHP环境,打开 delete.php 文件 ,配置好 bucket ,accessKey,secretKey ,把整个文件夹丢到PHP运行环境里面,从浏览器打开就行 源码:七牛删除全部文件
PHP nodejs php md5 加密不一致问题
提醒:本文最后更新于2021-05-19 22:49,文中所关联的信息可能已发生改变,请知悉! nodejs // 签名 var str = '10222123730003中文sy14613066196973131a80a30dbe82831d7987bff5'; var signature = crypto.createHash('md5').update(str).digest('hex'); signature:8b6cbfdbf9ecae41686fe64eacea749a php $str = '10222123730003中文sy14613066196973131a80a30dbe82831d7987bff5'; $signature = md5($str); $signature:a4c1f4912ecd810ae5e7bdbf3cc38a33 更改后的nodejs var str = '10222123730003中文sy14613066196973131a80a30dbe8283…
服务器 MySQL通过 binlog 恢复数据纪要
建议依赖 https://github.com/danfengcao/binlog2sql 这个库 命令 把binlog输出到文件 “ mysqlbinlog.exe –no-defaults –base64-output=DECODE-ROWS mysql-bin.000003 –database=test > d:\00003.txt ” 恢复方式 一:把binlog传入MySQL “ mysqlbinlog.exe –no-defaults mysql-bin.000001 –start-position=0 –stop-position=1715 –database=tset | mysql -uroot -proot ” 二:使用上面的这个库进行反向SQL “ python binlog2sql.py -uroot -h’127.0.0.1′ -proot -d’test’ –sql-type INSERT UPDATE –start-file=’mysql-bin.000003’ …
PHP composer 安装某些包时 禁用依赖判断
提醒:本文最后更新于2021-05-19 22:49,文中所关联的信息可能已发生改变,请知悉! 起因 最近想试试 swoole ,在win安装easyswoole时提示没有swoole,然后就查了一下文章,在此记录一下 使用 composer require easyswoole/easyswoole=3.x –ignore-platform-reqs
PHP Windows上面开发swoole的一种另类尝试通过Samba方式
起因 近期想尝试swoole开发,无奈低版本系统搞不定docker,就想出了这么奇葩的玩法 步骤 首先安装VMware虚拟机,在虚拟机里面安装centos,然后安装宝塔(我比较喜欢)有其他的也可以尝试安装。 安装 Samba 包,设置 Samba 配置,Samba新版本的比较坑跟老版本不一样 # 新建一个 swoole_test用户,并加入www组 [share] comment = share path = /www/wwwroot/swoole_test.me browseable = yes guest ok = yes #writable = yes create mask = 0777 directory mask = 0777 write ok = yes write list = swoole_test 并且需要在站点目录打开权限 设置 0777 权限 最后在Windows添加映射就可以了
PHP Yii框架日志 分文件 分类型设置方法
‘log’ => [ ‘traceLevel’=> YII_DEBUG ? 3 : 0, ‘targets’ => [ [ ‘class’ => ‘yii\log\FileTarget’, ‘levels’ => [‘error’, ‘warning’,’info’,’trace’], ], [ ‘class’=> ‘yii\log\FileTarget’, ‘levels’ => [‘info’], ‘categories’ => [‘rhythmk’], ‘logFile’ => ‘@app/runtime/logs/Mylog/requests.log’, ‘maxFileSize’ => 1024 * 2, ‘maxLogFiles’ => 20, ], ], ], 调用方法 Yii::info(“info …. “,”rhythmk”); //输出自定义目录日志,@app/runtime/logs/Mylog/requests.log


VMware15 安装 mac OS 10.15 调整分辨率

Quartz MySQL Specified key was too long; max key length is 767 bytes

阿里小号突然不能开机了阿里小号客服电话

VMware 安装 Mac os时必要操作

WordPress出现Briefly unavailable for scheduled maintenance. Check back in a minute. 的解决方法

golang 适配器 单例模式

golang 适配器模式 简单示例记录

wordpress上传文件自动重命名方法一

使用vue3+provide+inject+watch组件层级太深之后偶发watch监测不到的情况
