php basename pathinfo 中文错误
123function get_basename($filename){ return preg_replace('/^.+[\\\\\\/]/', '', $filename);}
私域营销 运营 程序规划
管理员注册|11|22||ddd|ddd|
docker swarm 多个集群 网络互通 使用外部网络
只要声明使用外部网络即可 第一个集群网络设为可以外部连接12345networks: backend: # 网络可以被外部连接 attachable: true driver: overlay 第二个网络设置外使用外部网络1234networks: app_backend: # 使用外部网络 external: true 注意:docker swarm会给网络加上集群名字前缀,使用外部网络时候需要全称
npm 速度慢
1npm install npm --registry=https://registry.npmmirror.com/
js 算不准 问题
引入bignumber.jshttps://github.com/MikeMcl/bignumber.js 计算 12345678function plus(arr){ var res = BigNumber(0); for(var i in arr){ var j = arr[i] res = res.plus(j) } return res.toFixed()}
专业拓展阅读
数据结构 数据结构 C语言版 严蔚敏 算法图解 计算机网络计算机组成原理重要内容 离散数学 数据结构与算法 编译原理 综合内容电子技术、离散数学、程序设计、数据结构、操作系统、计算机组成原理、微机系统、计算机系统结构、编译原理、计算机网络、数据库系统、软件工程、人工智能、计算机图形学、数字图像处理、计算机通讯原理、多媒体信息处理技术、数字信号处理、计算机控制、网络计算、算法设计与分析、信息安全、应用密码学基础、信息对抗、移动计算、数论与有限域基础、人机界面设计、面向对象程序设计
laravel auth 多表认证
guards修改修改config/auth.php,在guards中增加所需内容,例如 123456789101112'guards' => [ 'admin' => [ 'driver' => 'jwt', 'provider' => 'admins', ], 'user' => [ 'driver' => 'jwt', 'provider' => 'users', 'hash' => false, ],], 增加auth中相应providers1234567891011'providers' => [ 'users' => [ ...
腾讯云 镜像 软件源
地址 支持内网地址 https://mirrors.cloud.tencent.com/ ubuntu https://mirrors.cloud.tencent.com/help/ubuntu.html 1234516wget -O /etc/apt/sources.list http://mirrors.cloud.tencent.com/repo/ubuntu16_sources.list18wget -O /etc/apt/sources.list http://mirrors.cloud.tencent.com/repo/ubuntu18_sources.list
laravel 记录 sql
12345678910111213141516// 开启记录\Illuminate\Support\Facades\DB::connection()->enableQueryLog();// 打印记录$bindings = \Illuminate\Support\Facades\DB::getQueryLog();$data = [];foreach ($bindings as $k => $b) { $bi = $b['bindings']; $bi = array_map(function ($a) { return '\'' . $a . '\''; }, $bi); $sql = str_replace('?', '%s', $b['query']); $sql2 = sprintf($sql, ...$bi); $data[$k] = $sq...
golang defer return 特性 实例
123456789101112131415161718192021package mainimport "fmt"func calc(index string, a, b int) int { ret := a + b fmt.Println(index, a, b, ret) return ret}func main() { a := 1 b := 2 defer calc("1", a, calc("10", a, b)) a = 0 defer calc("2", a, calc("20", a, b)) b = 1} defer在定义的时候会计算好调用函数的参数,所以会优先输出10、20这两个参数,之后就是根据定义的顺序倒序执行。 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556...