基本功
木鱼僧
如何你觉得这条路你还没有方向 那就不要停歇。
展开
-
一次完整的HTTP请求过程
当我们在浏览器的地址栏输入www.baidu.com,然后回车,回车这一瞬间到看到页面到底发生了什么呢?以下过程仅是个人理解:域名解析 --> 发起TCP的3次握手 --> 建立TCP连接后发起http请求 --> 服务器响应http请求,浏览器得到html代码 --> 浏览器解析html代码,并请求html代码中的资源(如js、css、图片等) --&g...原创 2020-02-27 20:46:21 · 152 阅读 · 0 评论 -
微信支付
http://blog.csdn.net/csdn_dengfan/article/details/52152591转载 2018-02-24 18:27:09 · 165 阅读 · 0 评论 -
高性能Mysql主从架构的复制原理及配置详解(转)
https://www.cnblogs.com/softidea/p/5679687.html转载 2018-02-25 20:35:16 · 228 阅读 · 0 评论 -
workman 和swoole 区别 和异同
workermanworkerman是一个高性能的PHP socket 服务器框架,workerman基于PHP多进程以及libevent事件轮询库,PHP开发者只要实现一两个接口,便可以开发出自己的网络应用,例如Rpc服务、聊天室服务器、手机游戏服务器等。workerman的目标是让PHP开发者更容易的开发出基于socket的高性能的应用服务,而不用去了解PHP socket以及PHP多...原创 2018-03-12 10:17:01 · 35325 阅读 · 2 评论 -
关于长连接和短连接的理解及使用场景
关于长连接和短连接的理解及使用场景定义:短连接:例如普通的web请求,在三次握手之后建立连接,发送数据包并得到服务器返回的结果之后,通过客户端和服务端的四次握手进行关闭断开。长连接:区别于短连接,由于三次握手链接及四次握手断开,在请求频繁的情况下,链接请求和断开请求的开销较大,影响效率。采用长连接方式,执行三次握手链接后,不断开链接,保持客户端和服务端通信,直到服务器超时自动断开链接,或者客户端主...原创 2018-03-12 10:29:55 · 3467 阅读 · 0 评论 -
如何判断ajax 请求
原文-----------http://blog.csdn.net/j080624/article/details/73775835首先需要明白一点AJAX请求中主要对象(原生对象)是什么?XMLHttpRequest具体参考AJAX的前生今世 (http://blog.csdn.net/j080624/article/details/55101279)。知道了该对象,那么就可以通过判断请求头属性...原创 2018-03-05 10:46:14 · 350 阅读 · 0 评论 -
HTTP请求、响应报文格式
原文 连接 http://blog.csdn.net/a19881029/article/details/14002273转载 2018-03-05 10:49:19 · 124 阅读 · 0 评论 -
PHP 构造函数 和析构函数 意义所在
我们在创建和销毁对象时需要执行一些任务。例如,在创建对象时给属性赋值,在对象销毁时关闭数据连接等,这时就需要构造函数和析构函数。在PHP中构造函数和析构函数是固定的,如下:// 构造函数function __construct([argument1,argument2,...,argumentN]){ /* Class initialization code */}// 析构函数funct...原创 2018-03-05 11:45:47 · 260 阅读 · 0 评论 -
mysql事务的特性
常用的mysql事务使用特性:什么是事务? 事务是逻辑上的一组操作,组成这组操作的各个单元,要不全都成功要不全都失败,这个特性就是事务 数据库事务transanction正确执行的四个基本要素。ACID,原子性(Atomicity)、一致性(Correspondence)、隔离性(Isolation)、持久性注意:mysql数据支持事务,但是要求必须是innoDB存储引擎 解决这个问题: mysq...原创 2018-03-05 16:46:49 · 151 阅读 · 0 评论 -
mysql 索引的区别
一、简介MySQL目前主要有以下几种索引类型:1.普通索引2.唯一索引3.主键索引4.组合索引5.全文索引二、语句CREATE TABLE table_name[col_name data type][unique|fulltext][index|key][index_name](col_name[length])[asc|desc]1.unique|fulltext为可选参数,分别表示唯一索引...原创 2018-03-05 17:42:44 · 357 阅读 · 0 评论 -
如何检查mysql中建立的索引是否生效的检测方法及相关参数说明
所使用的mysql函数explain语法:explain < table_name >例如: explain select * from t3 where id=3952602;explain输出结果+----+-------------+-------+-------+-------------------+---------+---------+-------+------+---...原创 2018-03-06 09:48:16 · 362 阅读 · 0 评论 -
foreach 前面加&符号
foreach 加& 什么意思?foreach 加&遍历的同时改变原数组即修改数据或者增加数据foreach 加& 什么意思?注意:如果我要改变数组某一个值 直接遍历的话原数组是不会变的 下面提供两种方法1.我们可以遍历的时候组合数据然后 array_push()把数据赋给另一个新的数组这样才可以 如:$data=array(1,2,3,4);$newdata=array(...原创 2018-03-14 14:43:35 · 933 阅读 · 0 评论 -
window 一些快捷指令
查看端口的使用情况1.点击开始-运行,输入cmd打开命令行界面,输入命令netstat -nao|findstar "XXXX"(注:XXXX是想要查看的端口号,以25340端口为例)就会输出包含25340端口使用的情况,具体对应的行是指令 netstat -nao|findstr "***";...原创 2018-06-30 22:46:47 · 732 阅读 · 0 评论 -
redis 学习之路
windos 本地启动第一步 redis-server.exe第二步 redis-cli.exe原创 2018-07-12 14:10:27 · 391 阅读 · 0 评论 -
get 和post的区别
1. 最直观的就是语义上的区别,get用于获取数据,post用于提交数据。2. get参数有长度限制(受限于url长度,具体的数值取决于浏览器和服务器的限制),而post无限制(指HTTP,没有对POST进行任何限制)GET和POST长度的限制问题GET1.GET是通过URL提交数据,因此GET可提交的数据量就跟URL所能达到的最大长度有直接关系。 2.实际上HTTP协议对URL长度是没有限制的;...原创 2018-02-23 16:48:47 · 170 阅读 · 0 评论 -
二维数组简单排序
//$array 要排序的数组//$row 排序依据列//$type 排序类型[asc or desc]//return 排好序的数组function array_sort($array,$row,$type){$array_temp = array(); foreach($array as $v){ $array_temp[$v[$row]] = $v; } if($type == 'asc'...原创 2017-08-16 20:58:17 · 306 阅读 · 0 评论 -
TCP/IP协议 和HTTP协议区别
TCP/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己...原创 2018-02-23 15:10:12 · 376 阅读 · 0 评论 -
session 和cookie 区别
面试时候 面试官很喜欢问 有时候会突然卡壳 好记性不如烂笔头呢,,简短的说 大致一下几个大类能区分一下1,session 在服务器端,cookie 在客户端(浏览器 其中cookie 是以TXT文件默认保存在本地)2,session 默认(注意是默认--例如nodejs的express的,就是默认放在内存里的)被存在在服务器的一个文件里(不是内存)3,session 的运行依赖 session i...原创 2018-02-23 15:02:19 · 152 阅读 · 0 评论 -
mysql 常见的问题及其重点
1. 主键 超键 候选键 外键主 键:数据库表中对储存数据对象予以唯一和完整标识的数据列或属性的组合。一个数据列只能有一个主键,且主键的取值不能缺失,即不能为空值(Null)。超 键:在关系中能唯一标识元组的属性集称为关系模式的超键。一个属性可以为作为一个超键,多个属性组合在一起也可以作为一个超键。超键包含候选键和主键。候选键:是最小超键,即没有冗余元素的超键。外 键:在一个表中存在的另一个表的主...转载 2018-02-26 10:54:45 · 406 阅读 · 0 评论 -
git版本常用的命令
这是我经常用的几个命令至于其他的在详解:(具体详情看大神的http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html)git clone,第一次拉代码,git pull,更新代码,git branch 列出所有本地分支git branch -r 列出所有远程分支git checkout [branch-name] 切换到指定分支,并更新...原创 2018-02-26 18:25:55 · 413 阅读 · 0 评论 -
简单的正则
1---<img.*?> 会匹配 <img src="1.gif">2----<img.*> 会匹配 <img src="1.gif">...其他代码..</html>3---$str = '<img width="100" src="1.gif" height="1原创 2018-02-27 18:24:04 · 131 阅读 · 0 评论 -
svn 是 git区别
对比结果:1.git是分布式的scm,svn是集中式的。(最核心)2.git是每个历史版本都存储完整的文件,便于恢复,svn是存储差异文件,历史版本不可恢复。(核心)3.git可离线完成大部分操作,svn则不能。4.git有着更优雅的分支和合并实现。5.git有着更强的撤销修改和修改历史版本的能力。6.git速度更快,效率更高。基于以上区别,git有了很明显的优势,特别在于它具有的本地仓库。原文链...原创 2018-03-07 20:54:27 · 148 阅读 · 0 评论 -
liunx chmod 和 chown 区别
chown与chmod命令的区别chown 修改文件和文件夹的用户和用户组属性1。要修改文件hh.c的所有者.修改为sakia的这个用户所有chown sakia hh.c这样就把hh.c的用户访问权限应用到sakia作为所有者2。将目录 /tmp/sco 这个目录的所有者和组改为sakia和组netchown -R sakia:net /tmp/scochmod 修改文件和文件夹读写执行属性1。...原创 2018-03-09 10:37:06 · 169 阅读 · 0 评论 -
PHP 大数据处理思路
问题(来自lunacyfoundme) 我正在重建我们公司内部网,期间遇到一个与大量数据处理报告有关的前一个版本的问题。此前我曾用同步处理程序代码解决过这个问题,只是运行的很慢很慢,这导致我不得不延长最大脚本运行时间10到15分钟。有没有更好的方式来处理PHP站点里的大量数据呢?理想情况下我想在后台运行它,并且跑的越快越好。这个过程包括处理成千上万条的财务数据,我是使用Laravel来...原创 2018-03-09 11:20:17 · 11510 阅读 · 0 评论 -
三私一公
单例模式:即一个类只被实例化一次,当其他人对其再次实例化时,便返回第一次实例化的对象。这种模式可以极大地节约资源。典型应用于数据库类的实例化。以实例化一个Mysql数据库类为例:要实现一个类只实例化一次,就必须堵住其他实例化的入口。1.实例化类时,会自动调用类的构造方法,因为将构造方法设置为private属性,限制为只能在类内部实例化 private function __construct(){...原创 2018-03-01 13:33:28 · 443 阅读 · 0 评论 -
值传递和引用传递
值传递和引用传递的区别在于:原文(http://www.php.cn/php-weizijiaocheng-361555.html)值传递是将原变量内容复制下来,再用一个新的内存空间来保存,两个变量之间相互独立,而引用传递相当于给当前变量起了一个别名,实际上这两个变量引用的是一个值。相当于给一个变量起了两个名字另外一篇 https://www.cnblogs.com/lovebing/p/6063...原创 2018-03-01 14:21:15 · 137 阅读 · 0 评论 -
高效的截取文件后缀
<?php/** * Created by PhpStorm. * User: liuft * Date: 2016/3/7 * Time: 15:46 */ //第一种// function get_extension($file)// {// $file = explode('.', $file);// return end($file);// }//第二种 // functio...原创 2018-03-09 15:29:18 · 164 阅读 · 0 评论 -
PHP 打印时间
date_default_timezone_set('PRC'); //默认时区 echo "今天:",date("Y-m-d",time()),"<br>"; echo "今天:",date("Y-m-d",strtotime("18 june 2008")),"<br>"; echo &原创 2018-03-09 15:54:39 · 412 阅读 · 0 评论 -
mysql 联合索引
mysql联合索引命名规则:表名_字段名1、需要加索引的字段,要在where条件中2、数据量少的字段不需要加索引3、如果where条件中是OR关系,加索引不起作用4、符合最左原则https://segmentfault.com/q/1010000003984016/a-1020000003984281联合索引又叫复合索引。对于复合索引:Mysql从左到右的使用索引中的字段,一个查询可以只使用索引中...原创 2018-03-09 17:51:10 · 279 阅读 · 0 评论 -
一维数组冒泡排序
一维数组冒泡排序原创 2017-08-16 20:55:52 · 554 阅读 · 0 评论