自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 资源 (13)
  • 收藏
  • 关注

原创 自定义注解之程序员装逼的利器

相信很多人对Java中的注解都很熟悉,比如我们经常会用到的一些如@Override、@Autowired、@Service等,这些都是JDK或者诸如Spring这类框架给我们提供的。在以往的面试过程中,我发现,关于注解的知识很多程序员都仅仅停留在使用的层面上,很少有人知道注解是如何实现的,更别提使用自定义注解来解决实际问题了。但是其实,我觉得一个好的程序员的标准就是懂得如何优化自己的代码,那在代码优化上面,如何精简代码,去掉重复代码就是一个至关重要的话题,在这个话题领域,自定义注解绝对可以算得上是一

2020-11-16 10:22:21 23

原创 MySQL中,写SQL的好习惯

每一个好习惯都是一笔财富,本文分SQL后悔药, SQL性能优化,SQL规范优雅三个方向,分享写SQL的21个好习惯,谢谢阅读,加油哈~1. 写完SQL先explain查看执行计划(SQL性能优化)日常开发写SQL的时候,尽量养成这个好习惯呀:写完SQL后,用explain分析一下,尤其注意走不走索引。explainselectuserid,name,agefromuserwhereuserid=10086orage=18;2、操作delete或者update语句,加...

2020-11-16 10:15:13 26

原创 PHP-验证码

一、简单介绍验证码1.验证码为全自动区分计算机和人类的图灵测试的缩写。是一种区分用户是计算机和人的公共全自动程序。2.验证码主要应用场景:登录、注册确定前,发布、回复信息前,疑似机器请求时,做人/机器校验。3.实现步骤:(1)生成底图; 依赖php图片处理库GD,http://php.net/manual/zh/book.image.php(2)生成验证内容; 产生随机数,使用php函数rand();(3)生成验证码图片;(4)校验验证内容...

2020-11-13 11:33:37 22

原创 关于列表鼠标悬浮显示 tr title 属性换行

在换行的地方添加&#10;或&#13;实现换行<trtitle="指标名称:${target.intename}&#10;指标说明:${target.remark}&#13;指标名称:${target.intename}">

2020-09-26 13:57:14 46

原创 layer.open弹出层应用示例

1、定义一个静态页,里面存放需要的HTML,如FlightBookChildInsur.html在这个页面定义执行函数,用来返回数据;function callbackdata() { var passengerName = $("#passenger_Name2").val(); var passengerCertificate = $("#passenger_Certificate2").val(); var passengerCertificateNum = $("#pas...

2020-08-24 11:59:47 83

原创 在smarty中大括号跟js正则表达式冲突的时候

smarty的默认标记符是大括号:{},假如我们页面上有JS且定义了函数或者对象,或者有CSS定义了样式,就会出现大括号,smary引擎就会把这些大括号当作smarty语法来解释,很明显,这些CSS样式属性和JS里的语法,不是smarty的语法,smarty引擎就会报错。解决办法:1、修改smarty配置文件边界符;这样会影响之前的输出标签全部都需要做出替换,修改范围比较大,并且可读性比较差,而且在html使用效果不是很好$smarty = new Smarty();$smarty-&gt

2020-08-22 17:54:36 29

原创 关于layer.open弹出框input文本框 innerHtml 或 innerText 赋值不生效

问题:在写一个js小效果时,要给input文本框赋值,但赋值后却不生效,input框里面不管怎么赋值都是空白的。num.innerText = "1 18 7 11 18 20 23";打开控制台看到input标签里面的值是以及变动了的解决方案:突然意识到input的赋值是不一样的,input赋值是用value赋值的,和其他标签赋值搞混了。所以只要将innerText 换成innerHtml 就行了num.value = "1 18 7 11 18 20 23";

2020-08-21 20:24:10 141

原创 linux中的根文件系统(rootfs的原理和介绍)

linux中有一个让很多初学者都不是特别清楚的概念,叫做“根文件系统”。我接触linux前前后后也好几年了,但是对这个问题,至今也不是特别的清楚,至少没法给出一个很全面很到位的解释。于是,今天我们就来理一理这个话题。一、先交代一下文件系统在开始讨论根文件系统这个话题之前,我们必首先交代一下文件系统这个概念。毕竟,根文件系统只是文件系统中的一种比较特殊的形式而已。根据伟大的百度百科:文件...

2019-11-28 16:22:27 89

原创 Nginx 原理和架构

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/hustspy1990/article/details/102989305Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的...

2019-11-21 11:26:03 80

转载 Thinkphp 模型-连接数据库独立配置model数据库连接

连接数据库ThinkPHP内置了抽象数据库访问层,把不同的数据库操作封装起来,我们只需要使用公共的Db类进行操作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库驱动来处理。目前的数据库包括Mysql、SqlServer、PgSQL、Sqlite、Oracle、Ibase、Mongo,也包括对PDO的支持。如果应用需要使用数据库,必须配置数据库连接信息,数据库的配置文件有...

2018-07-04 14:12:36 2761

转载 ThinkPHP 框架执行流程分析

总体来说,应用的流程涉及到几个文件:Index.phpThinkPHP.phpThink.class.phpApp.class.phpDispatcher.class.phpThinkPHP/Mode/common.phpReadHtmlBehavior.class.phpRoute.class.phpHook.class.phpContentReplaceBehavior.class.phpWr...

2018-06-29 15:17:46 881

原创 PHP底层工作原理

PHP底层工作原理2011-09-13 17:19 by PHP淮北, 22634 阅读, 10 评论, 收藏, 编辑最近搭建服务器,突然感觉lamp之间到底是怎么工作的,或者是怎么联系起来?平时只是写程序,重来没有思考过他们之间的工作原理:PHP底层工作原理图1 php结构从图上可以看出,php从下到上是一个4层体系①Zend引擎Zend整体用纯c实现,是php的内核部分,它将php代码翻译(词...

2018-06-08 14:30:51 144

转载 PHP分页+Elasticsearch查询

PHP分页+Elasticsearch查询分页,本质上就是根据给定的页码和偏移量从服务器端请求数据。原理很easy,实践起来却有诸多问题,这里总结一下目前使用的分页demo,通过es请求数据,前端自己构建页码。html的页码显示,有4个参数,$page-具体页码,$pagenum-页数总数,$s-起始页,$e-结束页,点击页码通过触发pageChange()函数进行分页 跳转至指定页码的功能,通过...

2018-04-23 00:52:48 1073

原创 linux lamp 验证码出不来

解决办法:1、没有安装gd库,所以需要安装一下它:yum -y install gd2、PHP程序不能调用gd库,所以需要安装一下php-gd扩展:yum -y install php-gd3、重启一下apache服务,再刷新一下,搞定了;后来发现 php-xml 也没安装,顺便再也安装了一下强大的扩展 php-xml 。...

2018-04-17 14:39:30 312

转载 linux下LNMP环境搭建

LNMP是linux、nginx、mysql、php的简写;LNMP与LAMP环境一样也是用来做web网站后台的,nginx是轻量级的,进程间的通讯使用php-fpm独立使用;apache则是比较臃肿的,调用php的模块来完成的,需要加载很多模块,运行起来相对较慢。一、安装MySQL我们平时安装MySQL都是源码包安装的,但是由于它的编译需要很长的时间,我们这里选择安装二进制免编译包。你可以到My...

2018-04-13 12:01:19 4796

原创 CentOS 7 下安装 Nginx

安装所需环境Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境。 一. gcc 安装安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:yum install gcc-c++二. PCRE pcre-devel 安装PCRE(Perl Compatib...

2018-04-13 09:50:11 93

原创 linux常用命令和关闭防火墙

1.        linux常用命令Mkdir 创建Rm -rf 删除Chmod -R 777 权限Mysql -uroot -rquit退出 find / -name svn 查找位置 2.        关闭防火墙和selinuxRedhat使用了SELinux来增强安全,关闭的办法为:1. 永久有效修改 /etc/selinux/config 文件中的 SELINUX="" 为 disab...

2018-04-12 15:04:50 508

转载 搭建LNMP环境

需求:在Centos7.3下搭建LNMP环境1. 关闭防火墙和selinux打开文件selinuxvim /etc/sysconfig/selinux将文件中SELINUX=enforcing改为disabled,然后执行”setenforce 0″不用重启地关闭selinux。SELINUX=disabled关闭放火墙systemctl stop firewalld.service2.安装软件...

2018-04-12 14:49:27 67

原创 Thinkphp+Nginx(PHPstudy)切换nginx报404错误

最近一个TP5的项目说放到Nginx下测试看看,下载个 PHPstudy,放到WWW下,配置好域名,直接给个报个404;解决方法:1.先在phpstudy下配置好域名目录指向项目下的public下;2.复制下面这段代码放进nginx/conf/vhost文件里:location / {   index index.html index.htm index.php;        #autoinde...

2018-04-12 14:22:50 2397

原创 thinkphp5的Redis缓存配置

thinkphp采用cache类提供缓存功能支持,采用驱动方式,在使用缓存之前需要进行初始化操作。支持的缓存类型包括file、memcache、wincache、sqlite、redis和xcache等,默认情况下是file类型,配置redis缓存可以单一配置redis也可以同时使用多个缓存类型。配置方式分别如下:thinkphp采用cache类提供缓存功能支持,采用驱动方式,在使用缓存之前需要进...

2018-04-11 18:05:05 1977 1

原创 一张图读懂https加密协议

 https是一种加密传输协议,网站使用https后可以避免敏感信息被第三方获取。所以我们经常看见很多银行网站或电子邮箱等等安全级别较高的服务都会采用https协议,具体表现为,https开头、显示绿色安全锁、某些浏览器地址栏变成绿色。那么具体https是怎么工作的呢?一张图读懂https加密协议。  https加密协议简介  https其实是有两部分组成:http + SSL / TLS,也就是...

2018-04-10 17:31:32 454

原创 如何申请https证书、搭建https网站

  随着国内搜索引擎巨头百度启用全站https加密服务,全国掀起了网站https加密浪潮。越来越多的站点希望通过部署https证书来解决“第三方”对用户隐私的嗅探和劫持。谷歌方面作为推动网站https加密先驱,早在2010年5月份便开始提供https加密搜索服务。谷歌在算法更新中则表示“同等条件下,使用https加密技术的站点在搜索排名上更具优势”。那么,https加密链接作为互联网站点应用必然趋...

2018-04-10 17:30:16 2721

转载 扩展thinkphp5的redis类方法

笔者在开发时发现,thinkphp5的自带redis类方法,只有简单的读取缓存、写入缓存的基本方法,远不能满足我们业务的需求。redis本身支持五种数据类型,string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)。redis的东西就不必再介绍了,接下来还是让我一起扩展thinkphp5的redis方法吧!首先我们先找到缓存驱动类里的,handler()方法...

2018-04-10 16:44:00 1126 1

原创 Lamp环境搭建

查看linux系统版本uname -a 显示电脑以及操作系统的相关信息cat /proc/version 说明正在运行的内核版本cat /etc/issue 显示的是发行版本信息lsb_release -a (适用于所有的linux,包括Redhat、SuSE、Debian等发行版,但是在debian下要安装lsb)测试环境配置:Linux发型版本:CentOS release 6.3 (Fi...

2018-04-10 15:56:52 169

原创 用php编写支持高并发的网站,需要做什么处理

场景:很难做静态化,像做一个微博那样的东西,并发又高,跟新又快,这种需求的话,又该怎么处理?高并发的问题点是:高并发更多的是考验数据的读写,最终考验的是根据具体的业务需求惊醒系统的架构;解决方案:1.分清楚哪些数据是实时读写,哪些数据是异步读写;(区分数据实时还是异步的方法:) 2.数据的存储方案;mysql擅长的是关系数据和数据统计,高并发访问时瓶颈; ...

2018-04-10 15:53:45 337

原创 Navicat连接mysql 2003 - Can't connect to MySQL server on ' '(10038)

linux下mysql开启远程访问权限及防火墙开放3306端口默认mysql的用户是没有远程访问的权限的,因此当程序跟数据库不在同一台服务器上时,我们需要开启mysql的远程访问权限主流的有两种方法,改表法和授权法。解决这类问题方法如下,报10038是服务器防火墙没有开启3306端口1.打开防火墙配置文件#vim /etc/sysconfig/iptables

2017-11-03 14:41:42 16823

原创 2003 - Can't connect to MySQL server on ' '(10038)

linux下mysql开启远程访问权限及防火墙开放3306端口默认mysql的用户是没有远程访问的权限的,因此当程序跟数据库不在同一台服务器上时,我们需要开启mysql的远程访问权限主流的有两种方法,改表法和授权法。解决这类问题方法如下,报10038是服务器防火墙没有开启3306端口1.打开防火墙配置文件#vim /etc/sysconfig/iptables

2017-11-03 14:38:30 947

原创 wireshark抓包详解

wireshark是非常流行的网络封包分析软件,功能十分强大。可以截取各种网络封包,显示网络封包的详细信息。使用wireshark的人必须了解网络协议,否则就看不懂wireshark了。为了安全考虑,wireshark只能查看封包,而不能修改封包的内容,或者发送封包。wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS

2017-11-01 15:07:24 902

原创 Linux 下 Make 命令

例解 Linux 下 Make 命令Linux 下 make 命令是系统管理员和程序员用的最频繁的命令之一。管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问题。本文我们将用一些实例来讨论 make 命令背后的工作机制。Make 如何工作的对于不知道背后机理的人来说,make 命令像命令行参数一样接收目标。这些目标通

2017-10-27 15:49:15 189

转载 深入理解面向对象——六大基本原则

这六大原则任何面向对象的语言都应该遵守的,要想让你的代码易扩展高服用就尽量去满足这六大原则吧,不一定严格按照某种设计模式,但是如果你的代码符合这六大原则,那么你的代码就是好代码了,好的代码不一定是严格按照设计模式写的代码。单一职责原则(SRP)Single Responsibility Principle,单一职责原则。定义:不要存在多于一个导致类变更的原因。通俗的说,即一

2017-10-27 10:56:46 170

原创 实战Nginx与PHP(FastCGI)的安装、配置与优化

一、什么是 FastCGIFastCGI是一个可伸缩地、高速地在HTTP server和动态脚本语言间通信的接口。多数流行的HTTP server都支持FastCGI,包括Apache、Nginx和lighttpd等,同时,FastCGI也被许多脚本语言所支持,其中就有PHP。FastCGI是从CGI发展改进而来的。传统CGI接口方式的主要缺点是性能很差,因为每次HTTP服务器遇到动态程序

2017-10-26 16:29:00 294

原创 PHP数据库操作:从MySQL原生API到PDO

本文将举详细例子向大家展示PHP是如何使用MySQL原生API、MySQLi面向过程、MySQLi面向对象、PDO操作MySQL数据库的。为了后面的测试,先建立数据库表test。包含表名user,score。CREATE TABLE `user` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(25

2017-09-20 15:58:41 290

原创 wamp最新版本php7和apache

最近我把我的wamp中的php增加了php7.0.5,顺便又添加了一个高版本的apache.在此记录分享一下。1. 配置前说明我的电脑是win10,所用的wamp为wamp2.5 64位版本。可以到这里下载官方最新版http://www.wampserver.com/en/(现在写这篇博客的时候突然发现,已经出了wamp3.0(晕啊~~~),其中已经预装了php7)以安装php

2017-09-17 00:18:02 383

原创 HTTP协议方法以及报头分析

HTTP协议内容:HTTP URL、HTTP请求、HTTP响应和HTTP消息。HTTP超文本传输协议,是应用层协议。HTTP是一个基于请求/响应模式的、无状态的协议。浏览器与服务器通信过程:客户发起连接;客户发送请求;服务器响应请求;服务器关闭连接。HTTP1.1版是一个持续连接,支持流水线请求HTTP URL格式:http://host[“:”port][

2017-09-09 11:15:05 347

原创 centOS目录结构详细版

使用linux也有一年多时间了  最近也是一直在维护网站系统主机  下面是linux目录结构说明 本人使用的是centos系统,很久没有发表博文了 近期会整理自己所用所了解知识点,发表linux相关的文章,记录自己的linux点点滴滴。  linux 目录结构   /: 根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、

2017-09-07 11:50:34 140

转载 Redis安装整理(window平台) +php扩展redis

主要步骤都是参考百度前几条的教程,但是中间出现了几个小小的问题,特地来补充一下:  window平台Redis安装 redis windows安装文件下载地址:http://code.google.com/p/servicestack/wiki/RedisWindowsDownload#Download_32bit_Cygwin_builds_for_Windows

2017-09-06 10:12:54 163

原创 mysql预处理

关于mysql预处理:1、  MySQL预处理简介预处理的意思是先提交sql语句到mysql服务端,执行预编译,客户端执行sql语句时,只需上传输入参数即可,这点和存储过程有点相似。一般而言,预处理的执行效率相对于一般的sql执行操作,效率比较高。由于客户端上传的或是读取的结果集是绑定输入内存地址和输出内存地址,对于一些二进制流,或大数据量的存储和读取显得尤为方便。 2、  参

2017-08-22 21:34:41 259

转载 架构设计经验杂谈

原则做一件事情,总得有个原则,它可以帮助我们进一步评价几个相差不多的事物。架构设计时的原则是什么?种豆得豆,种瓜得瓜,你秉持的原则直接决定后续的成效。我的答案是:可用第一可维护第二其它第三可用性第一。这个没有什么争议。系统再NB,跑不起来,完不成预定需求也是扯淡。可维护第二。是争论比较多的一个地方。而我觉得,可维护真的非常非常重要。一段无法维护的代码就是一颗

2017-07-08 22:11:20 169

原创 还原网站上压缩的js代码

摘要:这种代码浏览器能读懂,但正常人是没法阅读的。既然浏览器能读,浏览器当然也能还原这段代码。其实很简单。这里我使用的是chrome浏览器,也就是谷歌浏览器。我们经常可以看到一些网站,把所需的javascript代码压缩成一行,就像下图这样这种代码浏览器能读懂,但正常人是没法阅读的。既然浏览器能读,浏览器当然也能还原这段代码。其实很简单。这里我使用的

2017-07-05 22:21:27 8067

转载 Yii2框架-理解Yii2的架构

yii2的框架,因为国内关于yii2框架的具体中文资料还是比较少,下面整理一些比较好的中文资料。(1)yii2的底层和架构方面  a)http://www.yiichina.com/doc/guide/2.0yii2的目前的官方中文社区文档,翻译还算是比较明白,最好从这里入手  b)http://www.yiichina.com/tutorial/773      yii2

2017-07-04 01:37:22 3098

游戏3D模型

属于unity游戏开发3Dmax模型,该模型可用于游戏开发借鉴,有次啊场景的设计

2014-09-19

飞行源代码

飞行类源代码用unity游戏引擎开发的手机类软件

2014-06-16

navicat数据库工具navicat11.2.7 64bit

navicat,实用的小工具。

2018-05-29

解决phptudy运行php7报vc14

解决phptudy运行php7报vc9 ,vc14,实用小工具vcredist vc2015

2018-04-11

截屏实用小工具

是一个截屏实用小工具,方便实用的截屏小工具,欢迎下载!

2018-04-11

ThinkPHP5.0完全开发手册和ThinkPHP5快速入门

ThinkPHP5.0完全开发手册和ThinkPHP5快速入门,欢迎下载!

2018-04-11

php_igbinary

php_redis-2.2.5-5.6-ts-vc11-x64.zip php_redis-2.2.5-5.6-ts-vc11-x86.zip php_igbinary-1.1.1-5.6-ts-vc11-x86.zip php_igbinary-1.1.1-5.6-ts-vc11-x64.zip

2018-01-19

Navicat Premium 11.1.5 破解

Navicat Premium 破解补丁

2016-09-18

经典SQL语句大全

经典SQL语句大全

2016-06-17

ORM(面向对象PDO数据库框架 API框架) PHP

自主封装的PHP ORM框架,面向对象的PDO数据库操作,API框架,支持Get/Post/Put/Delete多种请求方式。

2016-02-02

PHP中文手册2016-02-02更新版

PHP中文手册,官方版本(加中文注释),2016-02-02更新。

2016-02-02

计算机科学的基础

计算机科学的基础,是了解计算机的一本不错的书籍。

2015-11-30

全端Web开发:使用JavaScript与Java

全端Web开发:使用JavaScript与Java,图灵读物,是一本不错的web书籍

2015-11-30

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除