MYSQL隔离级别

脏读:事务A读到事务B尚未提交的修改(update,Insert,Delete)记录后,事务B回滚了,事务A读取到的就是不存在的数据;

不可重复读:事务A第一次读取后,事务B进行了修改(Delete、Update),再当事务A读取时,发现数据在一个事务中前后不一;

幻读:和不可重复读类似,但幻读针对Insert操作,当事务A第一读取是表内有10行数据,此时事务B插入(Insert)了一条,当事务A再次读取时发现变成了11行,造成幻觉;

丢失更新:事务A和事务B拿到同一份数据1,A在1的基础上加1变成2后,此时B也在1的基础上加2变成3,由于B提交晚,因此最终数据变成了3,覆盖了事务A的操作,称为丢失更新;

树莓派安装php5.6

sudo vim /etc/apt/sources.list
将内容改成下面这样

#deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspbian.org/raspbian/ wheezy main contrib non-free rpi
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ jessie main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ jessie main non-free contrib

然后 sudo apt-get update

然后 sudo apt-get install php5 php5-fpm php5-cli

然后 php -v 看看是不是装好了5.6

别忘了安装pdo sudo apt-get install php5-mysqlnd php5-sqlite php-db

- 阅读剩余部分 -

js中的this指向

this的指向大致有四种:

1.函数调用的时候,this指向window。

functionaa(){
    console.log(this)
}aa() //window

2.当是方法调用的时候,this指向方法所在的对象。

var a={}
a.name = 'hello';
a.getName = function(){
    console.log(this.name)
}
a.getName() //'hello'

- 阅读剩余部分 -

HTTP 头部详细解释

  1. Accept:告诉WEB服务器自己接受什么介质类型,/ 表示任何类型,type/* 表示该类型下的所有子类型,type/sub-type。
  2. Accept-Charset:浏览器申明自己接收的字符集
    Accept-Encoding:浏览器申明自己接收的编码方法,通常指定压缩方法,是否支持压缩,支持什么压缩方法 (gzip,deflate)
    Accept-Language:浏览器申明自己接收的语言语言跟字符集的区别:中文是语言,中文有多种字符集,比如big5,gb2312,gbk等等。
  3. Accept-Ranges:WEB服务器表明自己是否接受获取其某个实体的一部分(比如文件的一部分)的请求。bytes:表示接受,none:表示不接受。
  4. Age:当代理服务器用自己缓存的实体去响应请求时,用该头部表明该实体从产生到现在经过多长时间了。
  5. Authorization:当客户端接收到来自WEB服务器的 WWW-Authenticate 响应时,该头部来回应自己的身份验证信息给WEB服务器。

- 阅读剩余部分 -