日常编程技巧积累...更新ing

本文用于记录日常coding中用到的语句,以便日后查找.

PHP

1.end($Array)来取key非规则数组的最后一个元素值

2.array_merge($Array)来重新排列数组的key值

3.数组相加函数

<?php
	function array_add($a,$b){
		//根据键名获取两个数组的交集
		$arr=array_intersect_key($a, $b);
		//遍历第二个数组,如果键名不存在与第一个数组,将数组元素增加到第一个数组
		foreach($b as $key=>$value){
			if(!array_key_exists($key, $a)){
				$a[$key]=$value;
			}
		}
		//计算键名相同的数组元素的和,并且替换原数组中相同键名所对应的元素值
		foreach($arr as $key=>$value){
			$a[$key]=$a[$key]+$b[$key];
		}
		//返回相加后的数组
		return $a;
	}
?>

4.number_format(number,decimals,decimalpoint,separator)能够设置保留数据形式(比如多少位小数)

<?php
	number_format($views, 1, ".", "");//保留一位小数,并且没有千位分隔符.
?>

CSS

1.html5开头无< !doctype html >,会导致$(window).height()函数无法计算当前窗口值.

JS

1.各个js的引入顺序会影响页面函数的调用.

2.html头的!DOCTYPE html会影响document.height等计算,使js出现效果偏差.

Mysql

1.Mysql多字段同时修改。

update tablenames set one = ? , two = ? , three = ?;

2.同数据库内多表导出。

mysqldump -uroot -proot dbname table1 table2 table3... > table.sql

Java

1.需要返回值的函数中,如果在if语句中return返回值,则需要保证包括所有的情况,否则将会报错缺少返回值(使用else)。

2.不能再嵌套的两个块中声明同名的变量。

public class DoubleInt {
    public static void main(String[] args) {
        int a = 10;
        {
            int a = 5;//wrong
        }
    }
}

3.String.equals(“A”);//双引号套住的才是String,单引号套住的是char

Shell

1.查找当前文件夹下所有包含“XXX”字符的文件

grep -r xxx ./

2.批量替换文件中的字符串

sed -i s/aaa/bbb/g `grep aaa -rl --include='*.php' ./`
//sed中-i表示操作文件
//grep中-r表示查找所有子目录,-l表示仅列出符合条件的文件名
//所以本操作是在当前目录下找到所有的php后缀名文件,将其中的aaa替换成bbb

Python

1.python中不存在自增运算符。在python中,变量都是对象的引用。int 类型的值是固定的,不可以改变。a+=2 的过程是,先计算a+2, 所得的结果存在一个新的int 对象,然后 a 再重新绑定为这个新的int 对象的引用。

Git

1.撤销未commit的更改。

git checkout -- filename