我们知道当插入多条数据的时候insert支持多条语句:

INSERT INTO t_member (id, name, email) VALUES
    (1, 'nick', 'nick@126.com'),
    (4, 'angel','angel@163.com'),
    (7, 'brank','ba198@126.com');

但是对于更新记录,由于update语法不支持一次更新多条记录,只能一条一条执行:

UPDATE t_member SET name='nick', email='nick@126.com' WHERE id=1;
UPDATE t_member SET name='angel', email='angel@163.com' WHERE id=4;
UPDATE t_member SET name='brank', email='ba198@126.com' WHERE id=7;

这里问题就出现了,倘若这个update list非常大时(譬如说5000条),这个执行率可想而知。

这就要介绍一下在MySql中INSERT语法具有一个条件DUPLICATE KEY UPDATE,这个语法和适合用在需要判断记录是否存在,不存在则插入存在则更新的记录。

具体的语法可以参见:http://dev.mysql.com/doc/refman/5.0/en/insert.html

基于上面这种情况,针对更新记录,仍然使用insert语句,不过限制主键重复时,更新字段。如下:

INSERT INTO t_member (id, name, email) VALUES
    (1, 'nick', 'nick@126.com'),
    (4, 'angel','angel@163.com'),
    (7, 'brank','ba198@126.com')
ON DUPLICATE KEY UPDATE name=VALUES(name), email=VALUES(email);

注意:ON DUPLICATE KEY UPDATE只是MySQL的特有语法,并不是SQL标准语法!

首先介绍下css-combo的功能:把CSS模块化的文件,打包合并到一个CSS文件中。

为什么项目中可能需要使用这个工具,作者给出了详细的说明。
http://www.techcheng.com/study/css/introduce-css-combo.html

ccs-combo的源文件托管地址:
https://github.com/daxingplay/css-combo

由于这个是用nodejs做的小工具,所以我们必须安装nodejs和npm模块管理操作扩展。

  1. 下载Node.js在Windows平台安装文件
    http://nodejs.org/download/
    创建D:\nodejs目录,并将node.exe保存在这个目录中。并将”D:\nodejs”加入系统环境变量PATH中,便于在任意位置执行node应用。

  2. 下载npm源代码:
    http://nodejs.org/dist/npm/
    将npm源代码解压到D:\npmjs目录中,在命令提示符窗口中执行下面的操作,完成npm的安装:

    D:\>cd npmjs
     node cli.js install npm -gf
  3. 安装css-combo

    npm install -g css-combo
  4. 使用css-combo
    命令行下,可以先进入需要打包的文件所在目录,然后

    csscombo test.source.css test.combo.css

文章来源:http://coolshell.cn/articles/2394.html

英文原文:http://net.tutsplus.com/tutorials/php/9-useful-php-functions-and-features-you-need-to-know/

下面是九个PHP中很有用的功能,不知道你用过了吗?

1. 函数的任意数目的参数

你可能知道PHP允许你定义一个默认参数的函数。但你可能并不知道PHP还允许你定义一个完全任意的参数的函数

下面是一个示例向你展示了默认参数的函数:

// 两个默认参数的函数
function foo($arg1 = '', $arg2 = '') {

    echo "arg1: $arg1\n";
    echo "arg2: $arg2\n";

}

foo('hello','world');
/* 输出:
arg1: hello
arg2: world
*/

foo();
/* 输出:
arg1:
arg2:
*/

先初步了解下URL重定向,Http Referer两个概念

URL重定向(URL redirection,或称网址重定向或网域名称转址),是指当使用者浏览某个网址时,将他导向到另一个网址的技术。

说白了就是URL重定向就是把一个URL重新定向到另一个URL上去,重定向可以把一个目录或者文件的访问请求转发至另外一个目录或者文件。

HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器籍此可以获得一些信息用于处理。

也就是说,比如从百度搜索找到这篇文章后,用户点击访问到这篇文章,那么我就能够从HTTP Referer中统计出每天有多少用户访问我这个页面来自于百度。

在ASP中获取REFERER的方式是:Request.ServerVariables(“HTTP_REFERER”)
在JSP中获取REFERER的方式是:request.getHeader(“REFERER”);
在PHP中获取REFERER的方式是:$_SERVER[‘HTTP_REFERER’];

Li标签Float:left在做网页侧栏的一些tags的时候,是一种很好的选择。
不过在中文字符换行问题上,可能会出现一点小问题,先看一张IE7和IE8下的效果图吧:

上图IE7的效果看起来的确很蛋疼,但是在标准浏览器中是不会出现上图IE7的效果的。

首先看下CSS代码结构