PHP代码优化技巧

基本

1. 使用单引号代替双引号(在含有变量的情况下)
    echo "string";
    echo 'string ' . $var;

2. 数组下标加引号
    $arr['key']
    $arr[$key]

3. 使用 $i += 2 代替 $i = $i + 2

4. 使用 ++$i 代替 $i++ (仅适用于PHP)

5. 尽量避免使用 continue(可以通过适当的构造)

6. 避免在 for 循环条件语句中使用函数
    for ($i = 0, $len = strlen($str); $i < $len; ++$i) {
        // 尽量避免在循环内部声明变量,尤其是大变量:对象/数组
        // do something
    }

7. 数组循环使用 foreach 代替 for
    foreach ($user_list as $user) {
        // 避免在循环内部执行 SQL 语句,mysqli_query('...')
        // do something
    }

8. 使用 include/require 代替 include_once/require_once

9. 在 include/require 中使用绝对路径
    define('BASEPATH', dirname(__FILE__));
    include BASEPATH . '/path/to/file.php';

10. 使用三目运算代替 if else

11.使用 switch case 代替 if elseif ... else

12.尽量避免使用错误控制运算符"@"(错误是用来解决的,不是用来忽略的)

13.避免多层嵌套

14.不要没有原因的复制一个变量(如:变量只用一次。如果是作为函数N多参数的一员,可以换行)

15.尽可能使用局部变量代替全局变量和对象属性(变量先声明后使用)

16.适当的使用大变量和全局变量,用完 unset 掉

17.使用 NULL === 代替 is_null

18.尽量使用 === 代替 ==
Read More →

VIM+ctags/cscope/taglist代码结构查看

目录结构

$ tree -C ~/.vim | grep -v ".cnx"

|-- doc
|   |-- taglist.cnx
|-- plugin
    |-- taglist.vim

1. ctags/cscope

ctags 用于生成 tags,cscope 用于查询变量及函数的定义位置。

Read More →

VIM中PHP代码使用tab键自动完成

目录结构

$ tree -C ~/.vim | grep -v ".cnx"

|-- dict
|   |-- php.dict
|-- syntax
    |-- php.vim 

1. PHP5.4语法文件

$ cd ~/.vim/syntax/
$ wget https://raw.github.com/ueaner/tools/master/vim/syntax/php.vim
Read More →