后端程序效率:
1、尽量将类的方法定义成static,它的速度会提升将近4倍。
2、键名字符串用单引号包起来,$row['id'] 的速度是$row[id]的7倍。
3、foreach效率更高,代替while和for,循环内部不要声明变量,能放到循环外的尽量放外面。
4、require_once()代价昂贵。
5、include文件时尽量使用绝对路径,因为它避免了PHP去include_path里查找文件的速度,解析操作系统路径所需的时间会更少。
6、如果你想知道脚本开始执行(译注:即服务器端收到客户端请求)的时刻,使用$_SERVER[‘REQUEST_TIME’]要好于time()。
7、str_replace函数比preg_replace函数快,但strtr函数的效率是str_replace函数的四倍。
8、函数代替正则表达式完成相同功能。
9、使用选择分支语句(译注:即switch case)好于使用多个if,else if语句。
10、用isset($row['key'])替代in_array('key',$row),性能上isset()>array_key_exists()>in_array();
11、数据库连接当使用完毕时应关掉,不要用长连接。
12、递增一个全局变量要比递增一个局部变量慢2倍。
13、递增一个对象属性(如:$this>prop++)要比递增一个局部变量慢3倍。
14、echo 比 print 快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo $str1,$str2。
15、尽量避免使用__get,__set,__autoload。
16、错误消息代价昂贵。
17、注销不用的变量尤其是大数组,以便释放内存。
18、一个字符串替换函数,可接受数组或字符作为参数,并且参数长度不太长,那么可以考虑额外写一段替换代码,使得每次传递参数是一个字符,而不是只写一行代码接受数组作为查询和替换的参数。
19、用@屏蔽错误消息的做法非常低效,极其低效。
20、重嵌套循环中,如有可能,应当将最长的循环放在内层,减少cpu跨层次数
21、用单引号替代双引号引用字符串以实现PHP性能优化。
22、用i+=1代替i=i+1。符合c/c++的习惯,效率还高。
23、用file_get_contents替代file、fopen、feof、fgets等系列方法,因为它的效率高得多(PHP 5.0.0以上)
24、如果要检查某个字符串是否满足多少长度,可以考虑用这种大括号(花括号)加 isset 的方式替代 strlen 函数,因为 isset 是语言结构,strlen 是函数,所以使用 isset 比使用 strlen 效率更高。 比如:if(!isset($str{5}))比if(strlen($str)<5)效率高
前端页面加载:
1、打开apache的mod_deflate模块,可以提高网页的浏览速度。
2、开启服务器压缩传输gzip加快图片等资源文件传输速度