后台开发
单例模式“后端铁废物”实例
_我走路带风
To save time is to lengthen life.
展开
-
ThinkPHP5之Validate和Validate层的封装
版本:TP5 学后台的小伙伴应该都对ThinkPHP有一定的了解,比如说最传统的MVC思想,大家肯定对这三个层背的很熟,模型、控制器、视图,并且很多人或许都认为TP框架就是这三个层,把他们分开,封装好,就相当于用框架完成了一个项目。 其实TP不只限于这些,分层的这种思想其实是想让我们的后台代码更加的纯粹,模块与模块之间,方法与方法之间,让整套代码更加的顺畅,减少冗余。通过TP对于类的封...原创 2018-05-11 23:47:26 · 5033 阅读 · 0 评论 -
ThinkPHP5 之 前置操作
前置操作 首先,在实际业务中假设这样一个场景,我需要做一套管理系统的,这个管理系统是教师对学生进行管理的一个工具,那么,甲方还给出这样的需求,主任的权限更多,可以进行更多的操作,而老师的权限较低,拥有的权限少。 那么对于每一个服务端的接口来说,有分为老师和主任两种类型的用户进行请求接口,可能对于学籍信息删除这一操作老师没有这样的权限,但是主任有这样的权限,这时候我们就需要在每一个接...原创 2019-03-22 03:59:41 · 2708 阅读 · 3 评论 -
MySQL 之 InnoDB引擎 Transaction(事务)
为什么需要事务? 假设有这样一个场景,用户进行订单支付这一操作,实现的过程中我们需要像订单表中添加一条记录,并且向支付记录表中添加一条记录,我们没有开启事务,假设我们第一条SQL语句执行成功了,但是第二条SQL语句由于某原因(可能系统崩溃什么的)执行失败了,那么我们的订单表插入了一条记录,但是我们的支付记录表没有添加记录,用户在支付的记录里面找不到自己的记录,但是却有订单,这就造成了数据...原创 2019-05-14 19:02:50 · 1071 阅读 · 0 评论 -
图文理解 JVM GC(Garbage Collection) 垃圾回收
目录前言JVM如何判断一个对象是不是垃圾?引用计数算法可达性分析法(主流判断方法)哪些元素可以为根节点?JVM堆的几种垃圾回收算法:标记清除复制标记整理JVM如何进行垃圾回收?分带垃圾回收算法Young(新生代)采用复制算法Old(老年代)采用标记清除或标记整理的方法JVM堆如何分配对象?垃圾收集器(GC)串行垃圾收集器(...原创 2019-05-28 19:26:28 · 2888 阅读 · 4 评论 -
TP5 Validate验证规则
系统内置的验证规则如下:格式验证类require 验证某个字段必须,例如:'name'=>'require'number 或者 integer 验证某个字段的值是否为数字(采用filter_var验证),例如:'num'=>'number'float 验证某个字段的值是否为浮点数字(采用filter_var验证)原创 2017-09-29 00:31:25 · 2979 阅读 · 0 评论 -
Ubuntu16.0搭建Apache+php+mysql环境(腾讯云)
登录安装apache2:sudo apt-get install apache2安装php:sudo apt-get install php 在apache2连接php:sudo apt-get install libapache2-mod-php安装mysqlsudo apt-get install mysql-server原创 2018-01-21 19:14:51 · 648 阅读 · 0 评论 -
本地XAMPP虚拟域名配置(配合路由)
本地XAMPP虚拟域名配置使用环境:XAMPP集成环境上面介绍完路由,下面我们来介绍一个和上面类似的一个比较好用的小操作,满足一下本地开发时候想偷偷懒的人。我们使用的是Apache,所以我们这个第一步是要找到Apache的虚拟主机配置文件:\xampp\apache\conf\extra\httdpd-vhosts.confxampp文件夹就是我们安装XAMPP的文件夹打开这个文件,我们先来看一看...原创 2018-05-12 21:50:41 · 6974 阅读 · 5 评论 -
Ubuntu的php支持curl
骚了一波curl模拟登陆,然后丢到Ubuntu上,然后十分懵逼的发现木有curl这个方法,这就很尴尬了,在window上面咱可以开启扩展,但是在Ubuntu还是挺好搞的第一步:sudo apt-get install php5-curl(装关系包)第二步(重启Apache):sudo service apache2 restart(我这里装的是Apache2,自原创 2017-08-16 15:41:46 · 388 阅读 · 0 评论 -
VMware虚拟机安装Ubuntu以及Linux入门基础
今天因为一些需求需要简单的总结Linux入门知识,总结完也就顺便一道放上来了Linux知识目录1...................................................初识Linux2...................................................Linux特点3......................原创 2017-08-16 16:28:52 · 845 阅读 · 0 评论 -
Ubuntu14.0搭建Apache+php+mysql环境(腾讯云)
安装 Apache2: sudo apt-get install apache2 安装PHP模块: sudo apt-get install php5Apache支持php sudo apt-get install libapache2-mod-php5 sudo apt-get ins原创 2017-08-16 16:33:23 · 508 阅读 · 0 评论 -
xampp开了Apache但是局域网不能访问的问题,快进来,已解决
之前一直奇怪开了xampp的Apache,为什么同一局域网下面还是不能访问,在网上找了n个答案都没用,卡了半年,今天终于成功,心情无比激动。老铁打开防火墙,打开高级设置点击防火墙属性把入站链接的阻止改成允许然后这是别人的电脑,我快哭了老铁。原创 2017-05-24 23:13:16 · 2771 阅读 · 1 评论 -
js在表单提交时的验证
第一种:复制代码代码如下: function check(form) { if(form.userId.value=='') { alert("请输入用户帐号!"); form.userId.focus(); return fa转载 2017-10-09 22:19:10 · 343 阅读 · 0 评论 -
TP5上传图片Call to a member function move() on null
控制器如下:$file=request()->file('gywm');dump($file);$file->move(ROOT_PATH);错误原因,$file输出来是null原创 2017-10-19 20:18:13 · 13720 阅读 · 1 评论 -
警告自己
再重申三百次,下次写form一定要加 enctype="multipart/form-data"不管上不上传图片,我真的爆炸了,呜呜呜原创 2017-10-19 21:21:55 · 288 阅读 · 0 评论 -
TP5之图片上传
TP5 图片上传HTML代码如下:TP5控制器代码如下:$file = request()->file("photo");if($file){ $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads'); if($info){原创 2017-10-19 22:48:58 · 10290 阅读 · 0 评论 -
xampp安装、问题解决及使用
转载自:http://mp.weixin.qq.com/s?__biz=MzIxNjYwMzc1MQ==&mid=2247483658&idx=1&sn=47fb376247329718fae0b92cf172fae6&chksm=9787cc02a0f04514d3d140b4a71c2519eb4d7275858a8e7409ec83b89b92e03e83ca...转载 2017-10-21 19:39:55 · 1032 阅读 · 0 评论 -
Redis数据库课题研究
Redis一. Redis入门@NoSQL概述名字:Not Only SQL非关系型数据库:1. 为了适应Web2.0网站这种动态和高并发的情况2. 对海量数据高效率存储和访问3. 高可扩展性和高可用性4. 数据库之间去掉关系容易扩展关系型数据库:1. 或许处理上万次的读的操作的时候还可以应付,但是处理上万次写的操作的时候可能就原创 2017-10-22 02:43:23 · 534 阅读 · 0 评论 -
Memcache课题研究
Memcache一. 什么是Memcache分布式高速缓冲系统分布式:可以在多台服务器上安装Memcache服务,可以达到很好 的集群效果高速:存储在内存中,读取速度比硬盘快作用:数据库压力大,在用户和数据库之间增加一个缓冲层缓解压力简而言之:可以吧Mamcache理解成一张只有key和value两个属性的数据表,key是id,value是数据 二. 应原创 2017-10-22 12:19:21 · 185 阅读 · 0 评论 -
腾讯云 Ubuntu+Apache2配置https和重定向
ssl配置安装opensslsudo apt-get install openssl开启ssl模块输入 sudo a2enmod ssl无效则输入下面两个命令 sudo ln -s /etc/apache2/mods-available/ssl.load /etc/apache2/mods-enabled/ssl.load原创 2017-10-22 16:10:14 · 1374 阅读 · 2 评论 -
Ubuntu云服务器tp框架遇到failed to open stream: Permission denied问题
Ubuntu云服务器tp框架遇到failed to open stream: Permission denied问题解决方法:找到runtime文件夹然后修改相应文件权限成777原创 2017-10-26 22:21:32 · 2564 阅读 · 1 评论 -
phpqrcode生成二维码
前期准备:1.phpqrcode类文件下载,下载地址:https://sourceforge.net/projects/phpqrcode2.PHP环境必须开启支持GD2扩展库支持include 'phpqrcode.php'; //引入$value = $_GET['url'];//二维码内容$errorCorrectionLevel = 'L';//容错级别$...原创 2017-12-02 17:09:03 · 737 阅读 · 0 评论 -
curl相关知识
简单爬去一个页面的例子:function curl_get($url) {// 初始化 $ch = curl_init();// 爬取url地址 curl_setopt($ch, CURLOPT_URL, $url);// 不将爬取内容直接输出而保存到变量中 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);转载 2017-11-27 16:06:33 · 275 阅读 · 0 评论 -
一个漂亮的php验证码类(分享)
转自:http://m.jb51.net/article/40341.htm一个漂亮的php验证码类(分享)作者:下面小编就为大家分享一个漂亮的php验证码类。需要的朋友可以过来参考下直接上代码:复制代码代码如下://验证码类class ValidateCode { private $charset = 'abcdefghkmnprstu转载 2017-11-27 18:21:33 · 564 阅读 · 1 评论 -
phpmailer发送邮件
这里介绍一下通过php使用phpmailer进行邮件的发送这个功能的实现。首先要开启这个服务有几个前置工作,首先确保自己的php有openssl服务,因为我们用的是ssl协议。1.这里拿QQ邮箱来说,去QQ邮箱的设置中找到“账号”,然后开启账号下面的SMTP/POP服务(也就是前两项),然后记录授权码。2.在网上找到phpmailer的资源并把class.stmp.php和cl原创 2018-01-11 20:21:01 · 711 阅读 · 0 评论 -
php常见过滤函数(实用)
stripslashes函数删除反斜杠:<?phpecho stripslashes("Who\'s Bill Gates?");?>htmlspecialchars函数<?php$str = "This is some bold text.";echo htmlspecialchars($str);?>把 转换为实体常用于防原创 2018-01-24 18:38:33 · 6617 阅读 · 0 评论 -
微信内置浏览器H5自动登录获取用户信息
首先公众号授权。然后拿到公众号内的APP_ID然后对自己服务器的域名进行授权然后调用code接口获取用户的code码:https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxf0e81c3bee622d60&redirect_uri=自己的域名 &response_t原创 2018-01-26 14:34:20 · 3055 阅读 · 0 评论 -
关于php正则匹配html格式字符串每次只匹配一行问题解决
我们如果要用php的正则去匹配某个html格式的字符串,如下面这种情况:在浏览器打开,其实他是解析成了html格式呈现出来,并且用php的函数preg_match()去匹配的时候,他每次只匹配到一行,比如说第一行的不能判断它的下一行是否出现了所以就先采用了一种将html格式先转移成字符串的形式然后再去匹配。如下两行代码和浏览器呈现效果:将尖括号去掉之后:字符串变成这样之后就可以比较好的去匹配了原创 2018-01-18 15:39:09 · 1477 阅读 · 1 评论 -
好用的HTTPS Apache on Ubuntu 16.04
InstallOn Ubuntu systems, the Certbot team maintains a PPA. Once you add it to your list of repositories all you'll need to do is apt-get the following packages.$ sudo apt-get update$ sudo apt-转载 2018-01-30 13:08:29 · 407 阅读 · 0 评论 -
request:fail错误(含https解决方案)(真机预览问题)
问题描述:域名已经备案,我全部都有,也在后台配置了,但是手机预览,还是请求失败, PC端是可以请求数据出来的 新版开发者工具增加了https检查功能;可使用此功能直接检查排查ssl协议版本问题: 可能原因:0:后台域名没有配置0.1:域名不支持https1:没有重启工具;2:域名没有备案,或是备案后不足24小时;备案未生效;感谢@小树提供的案例 3:ssl协议有问题:具转载 2018-01-30 13:17:49 · 17928 阅读 · 1 评论 -
socket.io简略中文文档(转)
1. 服务端io.on('connection',function(socket));监听客户端连接,回调函数会传递本次连接的socketio.sockets.emit('String',data);给所有客户端广播消息io.sockets.socket(socketid).emit('String', data);给指定的客户端发送消息socket.on('String',function(da...转载 2018-03-10 11:54:49 · 411 阅读 · 0 评论 -
nodejs socket.io粗略分房间
html:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="socket.io.js">原创 2018-03-10 21:25:27 · 731 阅读 · 1 评论 -
Ubuntu环境下安装nodejs和npm
转自:http://blog.csdn.net/wangtaoking1/article/details/78005038Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,其使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。 Node.js 的包管理器 npm,是全球最大的开源库生态系统,功能及其强大。 这篇文章介绍如何在ubuntu环境下安装no...转载 2018-03-10 22:35:11 · 402 阅读 · 0 评论 -
在Ubuntu 16.04 安装python3.6 环境并设置为默认
在Ubuntu 16.04 安装python3.6 环境并设置为默认转自:https://www.cnblogs.com/esin/p/7073119.html1.添加python3.6安装包,并且安装sudo apt-get install software-properties-common sudo add-apt-repository ppa:jonathonf/python-3.6su...转载 2018-03-24 11:35:01 · 614 阅读 · 0 评论 -
用conda创建python虚拟环境
转自:https://blog.csdn.net/lyy14011305/article/details/595008191、首先在所在系统中安装Anaconda。可以打开命令行输入conda -V检验是否安装以及当前conda的版本。2、conda常用的命令。 1)conda list 查看安装了哪些包。 2)conda env list 或 conda info -e 查看当前存在...转载 2018-03-24 12:12:05 · 1102 阅读 · 1 评论 -
ubuntu 下Anaconda3出现 conda:未找到命令
修改环境变量vim ~/.bashrc在最后添加:export PATH=~/anaconda3/bin:$PATH重启环境变量:source ~/.bashrc原创 2018-03-24 12:34:01 · 24424 阅读 · 7 评论 -
ubuntu下anaconda3解决conda更新权限问题
首先出现问题:然后我们去解决这个问题:这个问题就这样解决了原创 2018-03-24 14:11:25 · 3142 阅读 · 0 评论 -
Pytorch入门——安装
转自:https://blog.csdn.net/u010510350/article/details/72561761Pytorch目前支持的平台有Linux和OSX,在Pytorch官网上每种平台提供了conda、pip、source三种安装方式,同时也可以根据有无GPU进行cuda安装,在这里以ubuntu14.04进行安装学习。1. Anaconda安装配置 安装过程参考我之前的Anaco...转载 2018-03-24 15:29:00 · 427 阅读 · 0 评论 -
ubuntu16.0下安装xtrabackup
官网:https://www.percona.com/doc/percona-xtrabackup/2.1/installation/apt_repo.html第一步:$ sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A第二步:sudo vim /etc/apt/sources.list然后在最后加上两...原创 2018-03-24 20:27:30 · 3495 阅读 · 0 评论 -
Ubuntu16.04安装Redis
原文地址:http://blog.fens.me/linux-redis-install/前言Redis是常用基于内存的Key-Value数据库,比Memcache更先进,支持多种数据结构,高效,快速。用Redis可以很轻松解决高并发的数据访问问题;作为实时监控信号处理也非常不错。环境Ubuntu 16.04安装Redis服务器端~ sudo apt-get install redis-serve...转载 2018-03-31 22:31:13 · 239 阅读 · 0 评论 -
SQL语句总结
INNER JOIN(内连接):"Persons" 表:Id_PLastNameFirstNameAddressCity1AdamsJohnOxford StreetLondon2BushGeorgeFifth AvenueNew York3CarterThomasChangan StreetBeijing"Orders" 表:Id_OOrderNoId_P17789532446783322456...原创 2018-04-03 07:09:10 · 268 阅读 · 0 评论