js 关联数组 循环和操作

1。Hash关联数组定义
// 用Array 定义数组
myhash = new Array();
myhash[”key1″] = “val1″;
myhash[”key2″] = “val2″;

2。向Hash关联数组添加键值

// 添加一个新键 newkey ,键值为 newval
myhash[”newkey”] = “newval”;

3。删除Hash关联数组已有键值

// 删除一个键 newkey ,同时,该键值对应的 newval 也就消失了
delete myhash[”newkey”];

4。遍历Hash关联数组

// 遍历整个hash 数组
for (key in myhash) {
val = myhash[key];
}

5。Hash关联数组简易使用示例

// 转向脚本

正则表达式的复习

一个正则表达式主要由以下几部分组成的:原子,元字符,定界符,模式修正符号

如:”/\/iu”

原子: ims \s

元字符:* ?

模式修正符号: i u

定界符号:/ /

注意:

① 定界符:除了字母,数字和正斜线\以外的任何字符都可以是定界符号,如# #,| |,{ }等

② 元字符:是一种特殊的字符,是用来修饰原子用到,不可以单独出现

+:表示重复匹配其前面的原子一次或多次

?:表示重复匹配其前面的原子0次或一次

*:表示重复匹配其前面的原子0次或多次

{}:可以自定义前面原子出现的次数:

{n}表示重复匹配其前面的原子n次

{n,m}表示重复匹配其前面的原子n到m次,包括n和m

{n,}表示重复匹配其前面的原子n次或无限次

. :匹配除换行符以外的任意字符

^:匹配字符串的开始

$:匹配字符处的结束

|:表示或的关系,它的优先级别是最低的,最后考虑他的功能

\b:匹配单词的分解处,单词是由空格,标点符号或者换行符来分隔的

\B:匹配不是单词开头或结束的位置,如:/\Bone\b/ 表示one的左边不是边界,one的右边是单词边界(如空格,标点符号或换行符)

():重点

一:作为大原子使用:如/(test)+/ 表示匹配单词test至少一次

二:改变优先级,加上括号可以提高优先级

三:作为子模式使用

四:反向引用,可以在正则模式中直接将子模式取出来,作为正则表达式模式的一部分,如果是在正则表达式像替换函数preg_replace函数中,可以将子模式去除,在被替换的字符串中使用。

\1:取第一个子模式

\n:取第n个子模式

注意:单双引号的区别,如”\\1”等价于‘\1’

③ 原子:原子是正则表达式的最基本的组成单位,而且必须至少要包含一个原子,只要一个正则表达式可以单独使用的字符,就是原子

a) 元字符如果想做为原子使用,则必须使用转义字符“\”进行转义,如:\.,\*,\?等等

b) 转义字符除了可以将有意义的字符转成没意义的字符,还可以将没意义的字符转成有意义的字符,如:

\d ,\w,\s等等

.

匹配除换行符以外的任意字符

\w

匹配字母或数字或下划线或汉字 [A-Za-z0-9_]

\s

匹配任意的空白符 如:空格,\n\r\t\f等等

\d

匹配数字 [0-9]

\b

匹配单词的开始或结束

^

匹配字符串的开始

$

匹配字符串的结束

c) 可以自己定义一个原子表,用来匹配方括号中的任意一个原子

[a-z1-3]

[^A-Z]表示取反,用来匹配除了原子表中的原子意外的字符(^必须在[ ]内的第一个字符处出现),而且取反字符集可以匹配回车换行符

如何让input和img水平对齐

将input和img放同一行,img标签总是比input高出一个头,非常难看。之前试过好多方法,都不行。后来在网站搜到最多的就是给img添加一个align=”absmiddle”属性,这个方法似乎的确可行,但是不符合HTML标准。后来无意中发现同时给input和img添加vertical-align:middle就行:

input,img{vertical-align:middle;}
这样代码就会规规矩矩地水平对齐了。

原文地址:http://blog.lrenwang.com/post/194/

git log 用法

查看全部提交日志

$git log

 

查看两次提交

$git log 2

 

查看提交日志,以图形方式显示,刚刚发现的超好用~~~~~~~~~

$git log –graph

 

显示所有的提交, 只显示提交

$git log --oneline --decorate

查看某个文件的修改历史

$git log --pretty=oneline 文件名

显示某次提交修改的文件

$git log --stat -2 查看近两次提交修改的文件
$git log --stat 4a12bde1403d 显示这个哈希以前的修改历史

查看各个用户提交

git shortlog -n -s

Ci CI_DB类

一直看到 pdo类中有 CI_DB_pdo_driver extends CI_DB 有这个一个写法,可是怎么找都找不到这个CI_DB类
后来仔细一看.他妈的坑爹啊

在 system/database/DB.php 中有这么两句话,我才知道了写在了DB.php这个文件中

	       if ( ! class_exists('CI_DB'))
		{
			eval('class CI_DB extends CI_DB_active_record { }');
                }

OR下面这段代码.因为他判断是否要启动 ar类


               if ( ! class_exists('CI_DB'))
		{
			eval('class CI_DB extends CI_DB_driver { }');
		}