提升PHP性能的21种方法介绍


Posted in PHP onJune 25, 2013

1.用单引号来包含字符串要比双引号来包含字符串更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会。
2.如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。
3.$row['id'] 的速度是$row[id]的7倍。
4.echo 比 print 快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo $str1,$str2。
5.在执行for循环之前确定最大循环数,不要每循环一次都计算最大值,最好运用foreach代替。
6.注销那些不用的变量尤其是大数组,以便释放内存。
7.尽量避免使用__get,__set,__autoload。
8.require_once()代价昂贵。
9.include文件时尽量使用绝对路径,因为它避免了PHP去include_path里查找文件的速度,解析操作系统路径所需的时间会更少。
10.如果你想知道脚本开始执行(译注:即服务器端收到客户端请求)的时刻,使用$_SERVER[‘REQUEST_TIME']要好于time()。
11.函数代替正则表达式完成相同功能。
12.str_replace函数比preg_replace函数快,但strtr函数的效率是str_replace函数的四倍。
13.如果一个字符串替换函数,可接受数组或字符作为参数,并且参数长度不太长,那么可以考虑额外写一段替换代码,使得每次传递参数是一个字符,而不是只写一行代码接受数组作为查询和替换的参数。
14.使用选择分支语句(译注:即switch case)好于使用多个if,else if语句。
15.用@屏蔽错误消息的做法非常低效,极其低效。
16.打开apache的mod_deflate模块,可以提高网页的浏览速度。
17.数据库连接当使用完毕时应关掉,不要用长连接。
18.错误消息代价昂贵。
19.在方法中递增局部变量,速度是最快的。几乎与在函数中调用局部变量的速度相当。
20.递增一个全局变量要比递增一个局部变量慢2倍。
21.递增一个对象属性(如:$this->prop++)要比递增一个局部变量慢3倍。

PHP 相关文章推荐
php获取某个目录大小的代码
Sep 10 PHP
PHP 图片上传实现代码 带详细注释
Apr 29 PHP
PHP面向接口编程 耦合设计模式 简单范例
Mar 23 PHP
PHP register_shutdown_function函数的深入解析
Jun 03 PHP
PHP连接局域网MYSQL数据库的简单实例
Aug 26 PHP
php中文验证码实现方法
Jun 18 PHP
php输出含有“#”字符串的方法
Jan 18 PHP
PHP单例模式定义与使用实例详解
Feb 06 PHP
yii2.0整合阿里云oss的示例代码
Sep 19 PHP
Laravel中日期时间处理包Carbon的简单使用
Sep 21 PHP
PHP多线程模拟实现秒杀抢单
Feb 07 PHP
laravel 出现command not found问题的解决方案
Oct 23 PHP
解析如何通过PHP函数获取当前运行的环境 来进行判断执行逻辑(小技巧)
Jun 25 #PHP
解析php取整的几种方式
Jun 25 #PHP
关于PHP内存溢出问题的解决方法
Jun 25 #PHP
关于PHP session 存储方式的详细介绍
Jun 25 #PHP
基于php使用memcache存储session的详解
Jun 25 #PHP
解析Extjs与php数据交互(增删查改)
Jun 25 #PHP
深入extjs与php参数交互的详解
Jun 25 #PHP
You might like
php对数组内元素进行随机调换的方法
2015/05/12 PHP
php自定义函数实现二维数组排序功能
2016/07/20 PHP
php图形jpgraph操作实例分析
2017/02/22 PHP
php递归函数怎么用才有效
2018/02/24 PHP
iframe 自适应高度[在IE6 IE7 FF下测试通过]
2009/04/13 Javascript
javascript常用对话框小集
2013/09/13 Javascript
js浮点数保留两位小数点示例代码(四舍五入)
2013/12/26 Javascript
jQuery设置与获取HTML,文本和值的简单实例
2014/02/26 Javascript
js中unicode转码方法详解
2015/10/09 Javascript
利用jQuery实现滑动开关按钮效果(附demo源码下载)
2017/02/07 Javascript
angular4自定义表单控件[(ngModel)]的实现
2018/11/23 Javascript
浅析Vue 防抖与节流的使用
2019/11/14 Javascript
原生JavaScript创建不可变对象的方法简单示例
2020/05/07 Javascript
原生js+canvas实现贪吃蛇效果
2020/08/02 Javascript
[47:06]DOTA2上海特级锦标赛主赛事日 - 4 败者组第五轮 MVP.Phx VS EG第一局
2016/03/05 DOTA
[03:01]完美世界DOTA2联赛PWL S2 集锦第二期
2020/12/03 DOTA
简单谈谈Python中的反转字符串问题
2016/10/24 Python
解决pycharm运行时interpreter为空的问题
2018/10/29 Python
详解Python下Flask-ApScheduler快速指南
2018/11/04 Python
详解Python requests 超时和重试的方法
2018/12/18 Python
PyTorch的深度学习入门之PyTorch安装和配置
2019/06/27 Python
python 实现turtle画图并导出图片格式的文件
2019/12/07 Python
详解字符串在Python内部是如何省内存的
2020/02/03 Python
Python实现分数序列求和
2020/02/25 Python
使用Python获取当前工作目录和执行命令的位置
2020/03/09 Python
通俗易懂了解Python装饰器原理
2020/09/17 Python
python中用Scrapy实现定时爬虫的实例讲解
2021/01/18 Python
CSS实现定位元素居中的方法
2015/06/23 HTML / CSS
关于 HTML5 的七个传说小结
2012/04/12 HTML / CSS
导师推荐信范文
2014/05/09 职场文书
企业负责人任命书
2014/06/05 职场文书
节约用水的口号
2014/06/20 职场文书
大连星海广场导游词
2015/02/10 职场文书
给朋友的道歉短信
2015/05/12 职场文书
医院员工辞职信范文
2015/05/12 职场文书
《秋思》教学反思
2016/02/23 职场文书