php性能优化注意
其实php开发中大部分的性能瓶颈并不在php,而是数据层和架构.但是作为phper,天天写代码,顺手的时候最好养成习惯比较好.
1.for,foreach,while性能和使用
- for 和foreach其实在小数组里性能其实差不过,用哪个都可以,foreach处理小数组更方便.
- 对于大数组,推荐用for,性能更优.另外数组的总数提前计算更好.
- foreach和while, 对于输出或者只读操作foreach更快,而对于有赋值的操作或者有写的操作while则更快.
2.字符串
- 用逗号连接字符串比用点号效率会更高.
1 | echo "aaaaa","bbbbbb","ccccccc"; |
- 如果字符串里有变量最好使用双引号:
1 | echo "hell $name"; |
3.使用memcached或者redis(数据缓存)
- memcached 适用与高并发且不需要对缓存持久化的场景.能够极大的降低服务器负载的同时提高服务器的响应速度.
- redis 则适合缓存多种数据类型且需要对缓存持久化的场景.缺点是不支持多线程,对cpu效率要求较高.redis还可以做推送的订阅相关的业务(在实际生产环境中不是很稳定,需要考虑命中率问题).
4.情况比较多的业务逻辑使用switch case 替换if else
- 一个比较权威的说法
1 | 不考虑不同的编译器优化程度差异,假设都是最好的优化,那么Switch语句击中第三个选项的时间跟if/else if |