web
西门吹雪的峥嵘岁月
这些原理的运用,随时随地都要以当时的历史条件为转移
展开
-
bitmap原理及实现
原理以二进制位来表示数字例如:第27位为1,第28位为0。表示在map中27存在28不存在实现代码<?phpclass bitMap{ protected $intBitSize = null; protected $intBitSizeLog2 = null; protected $map = []; /** * bitMap...原创 2020-04-18 20:50:56 · 5503 阅读 · 0 评论 -
dockerfile常用指令详解
dockerfile1. run它接受命令作为参数并用于创建镜像。RUN会在shell或者exec的环境下执行命令。参见CMD指令RUN echo helloworldRUN[“程序名”,“参数1”,“参数2”]#可以免除运行/bin/sh的消耗,如果参数中引号等特殊字符,需要进行转义2. copy & addCOPY指令用来将本地的文件或者文件夹复制到镜像的指...原创 2020-03-21 17:57:14 · 7218 阅读 · 0 评论 -
rsync+inotify高效实时同步
多服务器间数据实时同步方案实验环境docker模拟两台服务器名称ip类型centos_a172.17.0.2数据服务器centos_b172.17.0.3备份服务器实现将a的数据实时同步至b安装配置软件备份服务器(b)1. 安装rsync安装#安装yum -y install rsync#启动systemctl start rsy...原创 2020-03-16 19:59:44 · 6582 阅读 · 0 评论 -
mysql大数据量下取两张表的差集
发现之前线上接口响应缓慢,排查后发现百万数据量下sql取差集耗时过长, 查找资料后整理如下:思路取两张表的关联id的并集并作为临时表temp的id,然后count(id)=1即为两张表的差集(因为两张表union all后同一个关联id出现次数必然会大于等于2)表结构A: id,name,statusB: id,sid,create关联: B.sid=A.id之前sqlsele...原创 2020-02-12 21:07:32 · 7821 阅读 · 0 评论 -
git 常用
1. 忽略自己在本地对配置文件的一些改动#忽略git update-index --assume-unchanged config.php#恢复git update-index --assume-unchanged .classpath原创 2019-12-31 20:02:46 · 127 阅读 · 0 评论 -
php AES工具类(附对应java Aes工具类)
phpclass Security {A public static function encrypt($input, $key) { $size = mcrypt_get_block_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_ECB); $input = Security::pkcs5_pad($input, $size...原创 2019-11-09 18:54:42 · 10556 阅读 · 0 评论 -
fastadmin 完全升级thinkphp5.1
FastAdmin 将框架完全升级到 ThinkPHP 5.1.38 LTS...原创 2019-10-20 16:57:00 · 7509 阅读 · 1 评论 -
利用mysql client5.7导入导出CSV数据
导出select * into OUTFILE 'D:\sc.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' LINES TERMINATED BY '\n' from cmf_stu where id>248305FIELDS TERMINATED BY ‘,’ 字段间分割符OPTION...原创 2019-10-16 20:12:15 · 2634 阅读 · 0 评论 -
php根据http请求触发shell脚本,思路及实现
概述非exec()执行shell命令不修改配置的情况下解决php最大执行时间限制异步返回结果思路php向mysql数据库添加记录,shell脚本读取记录并执行,将shell脚本加入crontab定时五分钟执行一次实现mysqlCREATE TABLE `task` ( `tid` int(8) unsigned NOT NULL AUTO_INCR...原创 2019-10-15 11:02:20 · 806 阅读 · 2 评论 -
php接口api实现RSA/AES加密(phpseclib)
安装phpseclibcomposer require phpseclib/phpseclib:~2.0封装使用 已经require composer autoload.php<?phpnamespace common;use phpseclib\Crypt\RSA;use phpseclib\Crypt\AES;class AuthTools...原创 2019-08-22 18:56:14 · 8206 阅读 · 0 评论 -
php(thinkphp3.2)实现定时任务
实现思路利用Linux crontab计划任务调用sh脚本,在脚本里调用php原创 2019-05-23 10:22:46 · 874 阅读 · 0 评论 -
thinkphp非前后端分离,动态实现web弹出层/框(thinkphp+layui.layer)
问题在前后端分离的情况下ajax请求接口之后,可能需要弹出层提示用户错误信息(例如密码错误)。非前后端分离情况下,通常使用跳转新页面以显示错误信息。现有需求:非前后端分离情况下,实现弹出层提示信息且不遮挡原页面内容。原理利用thinkphp $this->assign(); 将js脚本写入视图页面(类似xss),然后再js脚本里面使用layui.layer。代码控制器protec...原创 2019-04-19 10:33:36 · 1270 阅读 · 0 评论 -
thinkphp实现文章浏览量加一 且两分钟内重复访问无效
原理将客户端ip与当前文章id绑定生成session,下次访问,判断时间是否在合法范围代码 /** 浏览量加一 两分钟内重复访问无效 * @param $id 文章id */ protected function incHits($id){ if($vid){ $sessonName = md5($id.get...原创 2019-04-18 20:27:03 · 6011 阅读 · 0 评论 -
php判断当前是 http还是 https
** * 判断是否SSL协议 * @return boolean */function is_ssl() { if(isset($_SERVER['HTTPS']) && ('1' == $_SERVER['HTTPS'] || 'on' == strtolower($_SERVER['HTTPS']))){ return true; }e...转载 2019-01-16 15:05:05 · 2858 阅读 · 0 评论 -
CentOS7 搭建LNMP搭建流程及遇到的问题(配置yum源,centos开放端口,MySQL首次访问拒绝,nginx配置,浏览器访问PHP文件出现直接下载,nginx报错,nginx自启etc)
涉及解决LNMP安装后出现的问题有 修改nginx默认web目录 , 浏览器访问.php文件直接下载 ,linux重启后nginx报错 ,设置nginx,php-fpm开机自启 目录楼主操作环境1.centos7.0配置yum源2.安装php7.0 参考链接3.安装MySQL4.安装nginx至此LNMP搭建完成5. window浏览器访问vm...原创 2018-11-23 21:30:58 · 788 阅读 · 0 评论 -
php 实现http get和post(提交json数据)请求
接口,抓取数据经常用到//$arr为提交的数据为json类型 默认 getfunction http_curl($url,$type='get',$res='json',$arr=''){ //1.初始化curl $ch = curl_init(); //2.设置curl的参数 curl_setopt($ch, CUR...转载 2018-10-26 21:22:41 · 12834 阅读 · 0 评论 -
layui + thinkphp 图片上传 (选择图片后预览 点击后提交)
*前台*&amp;amp;lt;link rel=&amp;quot;stylesheet&amp;quot; type=&amp;quot;text/css&amp;quot; href=&amp;quot;/test/Public/src/layuiadmin/layui/css/layui.css&amp;quot; media=&amp;quot;all&a原创 2018-09-05 09:53:29 · 2205 阅读 · 3 评论 -
三级联动 (html+js+php 实现三级联动下拉选择框)
HTML :&lt;!--选定分类--&gt;&lt;form action="{:U('Classify/classify_detail',array())}" method="post" id="" name="myform" enctype="multipart/form-data&am原创 2018-09-05 09:39:05 · 5134 阅读 · 0 评论