- 博客(72)
- 资源 (1)
- 收藏
- 关注

原创 MySql 合并查询记录GROUP_CONCAT
GROUP_CONCAT()示例://表结构CREATE TABLE `demo` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `a` int(11) DEFAULT '0', `b` varchar(50) DEFAULT '', PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;//示例数据id|a|b1|10..
2020-05-29 15:01:44
332
原创 Laravel 是怎样防止你的定时任务重复执行
基本介绍有时候一个定时任务执行需要的时间可能会比我们想象的要长,这就会引起一个问题 —— **当前任务还没有执行完毕的时候另一个相同的任务也会执行,从而导致任务重复。**例如想象一下我们执行每分钟生成一次报告的任务,在经过一段时间后,数据量变得很大导致执行时间多于 1 分钟,这样就会导致在上一个任务还没结束的时候另一个相同的任务开始执行。解决方法大部分情况下是没有什么问题的,但是有时我们需要避免这种情况来保证获得正确的数据。在 Laravel 中我们可以通过withoutOverlapping 方法来
2020-05-12 17:52:07
1213
原创 [PHP]写一个不定参数/可变参数的函数
php写一个不定参数/可变参数的函数有两种方式。func_get_argsPHP「...」语法func_get_argsfunction foo(){ $numargs = func_num_args(); echo "参数总数量: $numargs<br />\n"; if ($numargs >= 2) { echo "如果参数总数...
2019-10-09 08:56:29
1054
原创 Laravel中chunk方法分块处理数据
在一些情况下,我们需要对大批量的数据进行操作,如果这个时候我们使用foreach的话,很可能会遇到操作超时的情况。在Laravel框架中我们可以很方便的使用chunk方法来解决。来看一个简单的例子:$users = User::all();foreach ($users as $user) { $some_value = ($user->some_field > 0) ? 1 ...
2019-08-13 05:03:44
4480
1
原创 网易云精选评论,总有一句戳在你心里
有人问我思念到极致是什么感觉。 我曾经发了句晚安给她 一晚上醒来七次看手机信息。 就是那种可怕的朦朦胧胧的意识 梦里都梦到她好像回了我信息 然后意识带我从梦境里挣扎出来立马去翻看手机。 你看 这大概就是思念深入骨髓 竟连梦境都不愿放过了吧。今天很冷,你现在怎么样呢 ——网易云音乐《我又想...
2019-08-08 17:11:32
989
原创 mysql where和having的使用区别
先看表结构mysql> show create table tbxxx;+-------+------------------------------------------------------------------------------------------------------------------------------------------------------...
2019-08-06 10:29:26
180
原创 mysql5.7 datetime 默认值为‘0000-00-00 00:00:00'值无法创建问题解决
使用root登陆数据库 命令界面执行 select @@sql_mode;结果中包含下面两个NO_ZERO_IN_DATE,NO_ZERO_DATE修改/etc/my.cnf,查找sql_model如果找不到则添加如下代码sql_mode="ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_C...
2019-07-31 17:38:03
661
原创 Nginx配置SSL证书
将原来配置好的server部分内容修改改为以下下内容:server { listen 443; # 80 -> 443 server_name baidu.com; # 你的域名 root /var/www/baidu; # 改成项目所在目录的 index index.html index.htm; # 新增ssl配置内容 ...
2019-07-04 12:37:01
142
原创 隐藏响应中的server和X-Powered-By
背景浏览器端在使用调试工具的情况下,可以看到我们站点server和X-Powered-By,会让「不法分子」知道我们网站的编程语言以及服务器信息等,这样会很危险的。(使用 chrome 的调试工具中的 network 就可以查看这些信息)解决办法NginxApache隐藏X-Powered-By1.nginx 隐藏 「server」 版本信息,修改nginx.conf 修改配置文件为server...
2019-07-03 06:56:03
1468
转载 执行 brew install 命令长时间卡在 Updating Homebrew 的解决方法
在国内的网络环境,使用 Homebrew 安装软件的过程中可能会长时间卡在 Updating Homebrew 这个步骤。例:执行 brew install composer 命令➜ ~ brew install composerUpdating Homebrew... # 如果碰到长时间卡在这里,参考以下处理方法方法1:按住 control + c 取消本次更新操作➜ ...
2019-06-18 10:54:24
1599
原创 使用PHPCS+GIT钩子保障团队开发中代码风格一致性实践
实现: php-cs可以用来检测代码是否符合PSR-2规范,同时支持对不符合规范的代码自动格式化,让其转成PSR-2的编码风格。 安装: 安装composerphp-cs依赖于composer,所以笔者需要先安装composer,安装的方法有很多种,这里提供mac操作系统和手动安装方法brew install composer手动安装composer命令为:wg...
2019-06-18 10:31:00
538
原创 PHP 图片与base64相互转换
PHP 将图片转换为 base64 字符串格式: <?php//Filetype: JPEG,PNG,GIF $file = "encode.jpg"; //$file:图片地址if($fp = fopen($file,"rb", 0)) { $gambar = fread($fp,filesize($file)); fclose($fp); ...
2019-05-13 12:28:32
15017
转载 Redis启动警告解决
[gpp@goldpanpan src]$ 25342:C 14 Nov 11:08:48.118 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo25342:C 14 Nov 11:08:48.118 # Redis version=4.0.11, bits=64, commit=00000000, modified=0, pid=25342, ...
2019-05-07 14:12:38
1510
原创 吞吐量(TPS)、QPS、并发数、响应时间(RT)概念
吞吐量(TPS)、QPS、并发数、响应时间(RT)几个概念做下了解,查自百度百科,记录如下:1. 响应时间(RT) 响应时间是指系统对请求作出响应的时间。直观上看,这个指标与人对软件性能的主观感受是非常一致的,因为它完整地记录了整个计算机系统处理请求的时间。由于一个系统通常会提供许多功能,而不同功能的处理逻辑也千差万别,因而不同功能的响应时间也不尽相同,甚至同一功能在不同输入数据的情况下响...
2019-04-18 15:10:47
1316
原创 后管模版整理(包含bootstrap、vue、react、angular等主流框架)
分享一些后管模版,包含bootstrap、vue、react、angular等主流框架BootstrapAdminlte项目:https://github.com/almasaeed2010/AdminLTE演示:https://adminlte.io/themes/AdminLTE/index2.htmlSB Admin项目:https://github.co...
2019-03-26 15:06:03
1833
原创 PHP OpenSSL扩展 - 对称加密
PHP 在进入7.x 时代后,默认就不再附带 mcrypt 扩展,mcrypt 将被 openssl_* 一族函数所替代。所以,对于 PHPer 来说,有必要学习一下 PHP 的 OpenSSL 扩展。本文就先从 OpenSSL 扩展中的对称加密说起。后面会陆续更多非对称加密、数字签名、数字证书等函数的讲解。PHP 的 OpenSSL 扩展中,对称加密的相关函数有:openssl_en...
2019-03-26 14:40:49
766
原创 mysql5.7 datetime 默认值为‘0000-00-00 00:00:00'值无法创建问题解决
1、使用root登陆数据库 命令界面执行select @@sql_mode; 结果中包含下面两个NO_ZERO_IN_DATE,NO_ZERO_DATE2、修改/etc/my.cnf,查找sql_model如果找不到则添加如下代码 sql_mode="ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZER...
2019-01-08 17:31:09
783
原创 Git 的奇技淫巧
展示帮助信息git help -g回到远程仓库的状态抛弃本地所有的修改,回到远程仓库的状态。git fetch --all && git reset --hard origin/master重设第一个commit也就是把所有的改动都重新放回工作区,并清空所有的commit,这样就可以重新提交第一个commit了git update-ref -d H...
2019-01-08 17:25:26
489
原创 【mysql】如何在MySQL中导入超大的SQL文件?
方法1.在navicat中导入(速度慢) 2.使用source命令导入(速度快) 第一种很简单,本文只介绍第二种。步骤1.修改该目录下my.ini文件中max_allowed_packet 因为默认max_allowed_packet为1k,如果导入的文件过大。可能会报错。 我们将该值改大一点,我这里设为1G。 设置好了之后可以通过以下命令来查看:show VARIABLE...
2018-11-28 10:45:18
594
转载 Git撤销&回滚操作
开发过程中,你肯定会遇到这样的场景:场景一:糟了,我刚把不想要的代码,commit到本地仓库中了,但是还没有做push操作!场景二:彻底完了,刚线上更新的代码出现问题了,需要还原这次提交的代码!场景三:刚才我发现之前的某次提交太愚蠢了,现在想要干掉它!撤销上述场景一,在未进行git push前的所有操作,都是在“本地仓库”中执行的。我们暂且将“本地仓库”...
2018-09-30 11:25:32
1197
2
原创 Git短命令(alias,别名)
一、前言我们用git pull origin develop从origin仓库拉取develop分支。第一次输入这个命令,感觉不错;第二次,还行...第n>100次,这个命令好像有点太长了啊?确实,重复输入这种命令很枯燥乏味。能否把这个命令缩的足够短呢?例如git plode。大家可能知道了,Git是Linus Torvalds开发的。林纳斯已经为我们考虑到这一点,这也就是g...
2018-09-28 15:43:46
4605
原创 微信公众号开发获取openID以及用户详细信息
转载文章,做一个记录,以备不时之需 需要做一套微信签到、抽奖系统,我要在后台存储微信用户的相关信息,openIDNickname之类的信息。在开发前有一点准备工作,先去授权权限,在权限表里进行设置,如图: 填写这个网站地址的时候一定要注意填写域名路径,没有http头,就是你的域名而已,在该域名下的所有页面都可访问到,被授权。好了初期的准备工作做好了,下来填写公众测试...
2018-08-22 10:11:41
8550
1
原创 如何在CentOS/RHEL 7/6/上安装最新的Nodej和NPM
Node.js是一个建立在Chrome的JavaScript运行时的平台,用于轻松构建快速,可扩展的网络应用程序。 最新版本的node.js yum存储库由其官方网站维护。 我们可以将此yum存储库添加到我们的CentOS/RHEL 7/6系统中,并使用简单的命令安装node.js。添加Node.js yum源首先我们将在nodejs官方网站提供的系统中添加node.js yu...
2018-07-24 15:09:21
779
原创 PHP ZipArchive 实现压缩解压Zip文件
注:以下内容为转载(原文链接暂不清楚),请自己测试(有时间自己测试,会更新的)PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启,具体开启方法就不说了,不同的平台开启PHP扩增的方法网上都有,如有疑问欢迎交流。这里整理一下常用的示例供参考。 Linux安装php的ZipArchive扩展模块[Centos]...
2018-07-19 14:27:16
12307
原创 PHP大数相加
//大整数加法的php实现 function bigDataAdd($a,$b){ $m = strlen($a); $n = strlen($b); $num = $m>$n?$m:$n;//取最长数进行循环相加和进位 $result = '';//结果 $flag = 0; //进位标志 while($nu...
2018-06-09 12:10:36
1143
原创 php实现多继承-trait语法
自 PHP 5.4.0 起,PHP 实现了一种代码复用的方法,称为 trait。Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用 method。Trait 和 Class 组合的语义定义了一种减少复杂性的方式,避免传统多继承和 Mixin 类相关典型问题。Trait 和 Class 相似,但...
2018-05-25 09:12:10
224
原创 mysql实现hash分表
当一张mysql单表记录了上亿的记录时,性能往往不会很理想,于是我们往往会将一张单表拆分成多张相同的分表。今天我们主要来讲如何合理的进行分表。对一个字段进行分表:比如电商网站,需要记录用户的所有购买记录,如果将所有记录放入到一张表userbuy表中,势必会非常巨大。所以我们可以通过对用户userid进行分表处理,将不同用户的购买记录放入不同的分表中。具体做法如下:我们预估业务量,将最初的userb...
2018-05-22 10:03:49
2384
原创 PHP添加文字图片水印
需要注意几点:1、确保GD库的开启(增加图片水印只确保这一点即可)2、确保msyh.ttf文件存在并引入增加文字水印: /*打开图片*/ //1.配置图片路径 $src = "1.jpg"; $src =$img_path; //2.获取图片信息 $info = getimagesize($src); /...
2018-05-17 09:28:36
3106
原创 我是一名程序员,这就是2017年的我……
十年生死两茫茫写程序,到天亮 千行代,Bug 何处藏纵使上线又怎样朝令改,夕断肠领导每天新想法天天改,日日忙相顾无言惟有泪千行每晚灯火阑珊处夜难寐,加班忙这一年,我们的心里只有工作,程序猿、产品汪、运营喵,你不让我,我不让你,都抢着到客户那赶趟儿。红的像火,粉的像霞,白的像雪。服务中带着暧昧儿,闭了
2018-02-06 14:25:42
802
1
原创 Shell编程之特殊变量
$0 $# $n-->$[1..9] $* $@1、在shell中存在着一些特殊而又重要的变如:$1 $0 $#,我们称为特殊的位置变量要从命令行,函数,脚本,等传递参数时,就需要在shell脚本中使用位置参数变量$0:显示当前的脚本文件名,如果在执行脚本时添加了路径,那么全部都会输出$n:获取当前执行的shell脚本的第n个参数值比如:[n=1..9],如果N大于9那么就
2018-02-03 12:53:13
312
原创 php网站判断用户是否是手机访问的方法
有些时候,我们需要判断用户是否用手机访问,如果是手机的话,就跳转到指定的手机友好页面。这里就介绍一下,如何判断用户是否用手机访问。自定义的函数如下:$agent = check_wap();if( $agent ){ header('Location: http://www.baidu.com'); exit;} // check if wapfunction c
2018-01-29 11:10:02
1354
原创 处理服务器挖矿木马
挖矿木马潜伏在服务器上,可能每一个木马名称都不一样,但是大致基本一样。 由于我之前处理时候并没有保留图片,所以此文章依据别的文章所做整理。 杀wnTKYg病毒分两步,第一是找到它的来源,切断入口,第二步,找到它的守护进程并杀死,然后再去杀死病毒进程,有的守护进程很隐蔽,唤醒病毒之后,自动消亡,这时候top就看不到了,要留心。类似于这样,cpu达到百分之百了,这样的进程杀都杀不掉
2018-01-10 14:44:49
4712
1
原创 PHP获取今天,昨天,本月,上个月,本年 起始时间戳
date_default_timezone_set("Asia/Shanghai"); //设置为上海时间 否则开始时间会相差8个小时 //获取今日开始时间戳和结束时间戳$beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));$endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-
2018-01-03 11:10:40
13561
原创 mysql 查询今天,昨天,上个月...sql语句
今天 select * from 表名 where to_days(时间字段名) = to_days(now());昨天Select * FROM 表名 Where TO_DAYS( NOW( ) ) - TO_DAYS( 时间字段名) <= 17天Select * FROM 表名 where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(时间字段
2018-01-02 10:39:00
880
原创 PHP双向队列
队列是一种特殊的线性表,特殊之处在于它只允许在表的前端进行删除操作,而在表的后端进行插入操作单向队列:只能从头进,从尾出双向队列:头尾都可以进出<?php/** * Created by PhpStorm. * User: Alemon ° * Date: 2017/12/28 */class Queue{ private $queue=array()
2017-12-28 11:15:15
301
翻译 40个只有程序员才看得懂的段子
1. 一程序员去面试,面试官问:“你毕业才两年,这三年工作经验是怎么来的?!”程序员答:“加班。”2. 某程序员对书法十分感兴趣,退休后决定在这方面有所建树。于是花重金购买了上等的文房四宝。一日,饭后突生雅兴,一番磨墨拟纸,并点上了上好的檀香,颇有王羲之风范,又具颜真卿气势,定神片刻,泼墨挥毫,郑重地写下一行字:hello world。3. 问:程序员最讨厌康熙的哪个儿子。
2017-12-25 16:48:11
859
原创 Vim设置支持鼠标,光标定位,滚轮上下移动
本章主要说明如何使用鼠标功能。vim打开鼠标(临时设置):set mouse=a 长久设置,在~/.vimrc中添加set mouse=a关闭鼠标:set mouse-=a mouse参数说明// n 普通模式 // v 可视模式 // i 插入模式 // c 命令行模式 // h 在帮助文件里,以上所
2017-12-25 16:34:28
4936
原创 sourcetree 安装-Windows
sourcetree官网地址:https://www.sourcetreeapp.comsourcetree简介:SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端管理工具,同时也是Mercurial和Subversion版本控制系统工具。支持创建、克隆、提交、push、pull 和合并等操作。SourceTree拥有一个精美简洁的界面,大...
2017-12-18 15:46:32
13024
原创 Sublime Text3 + Golang 安装与部署
1.安装git 因为golang是通过git来管理远程包的,所以我们首先要安装git,下载地址:http://www.git-scm.com/download/。git安装比较简单,直接下一步即可(在Windows Explorer integration选项中将“Git Bash here”和“Git GUI here”打对勾),需要了解具体安装的可以看这里。
2017-12-06 17:05:01
417
原创 crontab实现定时任务
1 crontab实现定时任务1.1服务状态/sbin/service crond status 查看定时任务的服务是否启动 参数:start 启动服务 Stop 停止服务 Restart 重新启动服务 Reload 重新载入配置 1.2服务权限Crontab的权限管理存储在cron.allow文件与cron.den
2017-11-19 19:31:40
522
jqueryTreescroll.zip
2020-05-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人