- 博客(17)
- 资源 (21)
- 收藏
- 关注
原创 将数组转为字符串
/** * 将数组转为字符串 * @param $array */ public static function arrayToStr($array){ if(!is_array($array)){ return $array; } $str=''; foreach ($array as $key=>$val){ if(is_array($val...
2021-09-23 13:32:23 308
转载 如何提高国内访问GitHub的速度达到3MB/S以上
为什么GitHub下载速度这么慢?GitHub,我们都知道是世界上最大的开源及私有软件项目的托管平台,全世界每天有海量优秀的开源软件在这里产生,而 GitHub 在国内很多时候获取到的下载链接是亚马逊的服务器。中国因为不可言说的原因,经常抽疯或龟速。想要加快 GitHub 下载速度就需要用到 GitHub 国内加速服务,对于有条件的可以使用代理加快访问速度,而没有条件的就可以用到以下解决方案,实现加速:GitHub 镜像访问GitHub文件加速Github 加速下载加速你的 Github谷歌
2021-09-23 13:24:45 233
转载 使用Redis,你必须知道的21个注意要点
前言最近在学习Redis相关知识,看了阿里的redis开发规范,以及Redis开发与运维这本书。分使用规范、有坑的命令、项目实战操作、运维配置四个方向。整理了使用Redis的21个注意点,希望对大家有帮助,一起学习哈公众号:捡田螺的小男孩1、Redis的使用规范1.1、 key的规范要点我们设计Redis的key的时候,要注意以下这几个点:以业务名为key前缀,用冒号隔开,以防止key冲突覆盖。如,live:rank:1确保key的语义清晰的情况下,key的长度尽量小于30个字符。ke
2021-03-24 16:39:35 234
转载 PHP面试知识梳理
算法与数据结构BTree和B+treeBTreeB树是为了磁盘或者其他存储设备而设计的一种多叉平衡查找树,相对于二叉树,B树的每个内节点有多个分支,即多叉。参考文章:https://www.jianshu.com/p/da5…B+TreeB+树是B树的变体,也是一种多路搜索树。参考文章:https://www.jianshu.com/p/da5…排序算法快速排序快速排序是十分常用的高效率的算法,其思想是:先选一个标尺,用它把整个队列过一遍筛选,以保证其左边的元素都不大于它
2021-02-16 14:05:41 214
转载 注册、登录和 token 的安全之道
最近想要做一个小项目,由于前后都是一个人,在登录和注册的接口上就被卡住了,因此想登录、注册、口令之间的关系,使用 PHP 实现登录注册模块,和访问口令。出于安全的考虑,首先定下三项原则:在传输中,不允许明文传输用户隐私数据;在本地,不允许明文保存用户隐私数据;在服务器,不允许明文保存用户隐私数据;在网络来说,我们知道不论 POST 请求和 GET 请求都会被抓包,在没有使用 HTTPS 的情况下,抓包我们是防不住的,如果明文传输用户隐私,那后果就不说了。本地和服务器也是如此,比如 iOS 设
2021-02-16 13:46:38 666
转载 Cookie 和 Session 关系和区别
在技术面试中,经常被问到“Cookie和Session的区别”,大家都知道一些,Session比Cookie安全,Session是存储在服务器端的,Cookie是存储在客户端的,然而如果让你更详细地说明,恐怕就不怎么清楚了。本文分别对Cookie与Session做一个介绍和总结,并分别对两个知识点进行对比分析,让大家对Cookie和Session有更深入的了解。什么是HTTP首先要先介绍什么是HTTPHTTP:超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTT
2021-02-16 13:18:51 479
转载 如何少写PHP “烂“代码
写给初生牛犊不怕虎的童鞋们,大佬可随意摘看 本章基于PHP Laravel前言经常会有人问目录如何设计比较好?代码如何分布好?怎么写一个可维护的项目?“烂”项目我也没少写,以下是参考互联网各大佬的文章总结及个人开发经验而来.ControllerController顾名思义是控制器,在入门PHP的时候,就知道Controller代表MVC中的C层,MVC本身的概念就代码分离,教你如何如何将业务分开,但面临着业务的不断发展,代码的复杂度也随之提高,功能与功能之间的链接错综复杂,最后你的.
2021-02-16 13:13:34 208
原创 emoji表情 转义
/** * 把用户输入的文本转义(主要针对特殊符号和emoji表情) */function userTextEncode($str){ if (!is_string($str)) return $str; if (!$str || $str == 'undefined') return ''; $text = json_encode($str); //暴露出unicode $text = preg_replace_callback("/(\\\u[ed][0-9a-
2021-02-16 13:07:07 882
原创 时间美化函数
/** * 友好的时间显示 * * @param int $sTime 待显示的时间 * @param string $type 类型. normal | mohu | full | ymd | other * @param string $alt 已失效 * @return string */function friendlyDate($sTime, $type = 'normal', $alt = 'false'){ if (!$sTime) return '.
2021-02-16 11:26:30 127
原创 生成交易流水号
/* * 生成交易流水号 * @param char(2) $type */function doOrderSn($type){ return date('YmdHis') . $type . substr(microtime(), 2, 3) . sprintf('%02d', rand(0, 99));}
2021-02-14 14:34:25 624
原创 php 随机字符
/** * 随机字符 * @param int $length 长度 * @param string $type 类型 * @param int $convert 转换大小写 1大写 0小写 * @return string */function random($length = 10, $type = 'letter', $convert = 0){ $config = array( 'number' => '1234567890', 'let
2021-02-14 14:31:12 136
转载 编程的16个好习惯
1. 修改完代码,记得自测一下「改完代码,自测一下」 是每位程序员必备的基本素养。尤其不要抱有这种侥幸「心理:我只是改了一个变量或者我只改了一行配置代码,不用自测了」。改完代码,尽量要求自己都去测试一下哈,可以规避很多不必要bug的。2. 方法入参尽量都检验入参校验也是每个程序员必备的基本素养。你的方法处理,「必须先校验参数」。比如入参是否允许为空,入参长度是否符合你的预期长度。这个尽量养成习惯吧,很多「低级bug」都是「不校验参数」导致的。如果你的数据库字段设置为varchar(16),对方传了一
2021-02-14 14:15:25 718
原创 mac 安装和升级go
mac 安装和升级gogo1.9.7 升级到 go1.15.6之前由于电脑上面安装的go版本太低,导致部分程序调试失败,特此升级go版本记录升级过程因为使用的brew安装的go,这里升级go版本,因此需要先执行brew update此时很不幸的是报错了git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallowThis restriction has been made on GitHub's
2021-01-09 16:50:37 1525
原创 docker 学习记录
Docker安装#1.卸载旧版本sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-l
2020-12-31 15:34:34 97
原创 php 两位小数
PHP保留小数点有几种方式:round,floor,sprintf,number_format.那么这四种方式有什么区别呢1.round$num = 123.456;print_r(round($num,2));//123.46$num = 123.454;print_r(round($num,2));//123.45float round ( float val [, int precision]),round()对浮点数进行四舍五入2.floor$num = 123.45
2020-06-08 11:41:59 1134
原创 ThinkPHP,Mysql 事务数据更新0行问题
Thinkphp里面官方示例的事务操作,update影响0行的时侯,事务提交依然成功,从而导致数据出现一系列问题1.先了解下Mysql 事务的四大特性(ACID)原子性:一个事务(transaction)中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节.事务在执行过程中发生错误,会被回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过一样.一致性:在事务开始之前和事务结束以后,数据库的完整性没有被破坏.这表示写入的资料必须完全符合所有的预设规则,这包含资料的精
2020-06-03 13:24:03 492
ThinkPHP5.1完全开发手册.pdf
2018-05-12
GatewayWorker-for-win
2018-05-08
php 时间美化 友好时间函数
2018-05-08
浏览器友好的变量输出 dump
2017-09-05
nssock2.dll
2017-09-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人