php性能优化之php语言级性能优化
2015-06-19 15:33
686 查看
1:使用单引号来包含字符串。原因:避免了php在字符串中搜索变量、转义字符等操作。
2:数组的键,一定要加上引号。如:$arr['key']。原因:$arr[key]会将key当成一个常量,于是php会进行常量搜索,耗费时间。
3:使用 echo 而非 print,使用都好链接 echo 的字符串 而非 点号。如:echo 'Hello, ',$username; 原因:使用点号,进行了字符串链接操作。
4:避免在循环中重复计算。如:for($i=0; $i<count($arr); $i++),应为:for($i=0,$count=count($arr); $i< $count; $i++)。
5:如果可以,使用foreach代替for循环。如果需要,使用 foreach($data as $v) 代替 foreach($data as &$v)。
6:注销那些占用内存较大的变量,尤其是数组。如:unset($data)。
7:尽量避免魔术方法的使用,除非他们是必须的。
8:文件的引入操作,应当尽量使用绝对路径,减少php在include_path里查找。
9:如果可以,使用函数代替正则表达式。
10:str_replace 比 preg_replace 快, strtr 比 str_replace 快。
11:使用 switch 语句,替换多个 if else 语句。
12:尽量不使用错误抑制符@。
13:数据库连接使用结束时,记得关闭连接。
14:如果可以,递增局部变量而非全局变量。如果可以,递增局部变量而非成员属性。
15:成员函数的多少,不影响函数调用速度。
16:php解析静态文件要比动态文件快很多。
17:脚本的每一次调用都需要变异和链接,如果可以,使用缓存。
18:strlen($str) < 5 可以写成 isset($str{5})
2:数组的键,一定要加上引号。如:$arr['key']。原因:$arr[key]会将key当成一个常量,于是php会进行常量搜索,耗费时间。
3:使用 echo 而非 print,使用都好链接 echo 的字符串 而非 点号。如:echo 'Hello, ',$username; 原因:使用点号,进行了字符串链接操作。
4:避免在循环中重复计算。如:for($i=0; $i<count($arr); $i++),应为:for($i=0,$count=count($arr); $i< $count; $i++)。
5:如果可以,使用foreach代替for循环。如果需要,使用 foreach($data as $v) 代替 foreach($data as &$v)。
6:注销那些占用内存较大的变量,尤其是数组。如:unset($data)。
7:尽量避免魔术方法的使用,除非他们是必须的。
8:文件的引入操作,应当尽量使用绝对路径,减少php在include_path里查找。
9:如果可以,使用函数代替正则表达式。
10:str_replace 比 preg_replace 快, strtr 比 str_replace 快。
11:使用 switch 语句,替换多个 if else 语句。
12:尽量不使用错误抑制符@。
13:数据库连接使用结束时,记得关闭连接。
14:如果可以,递增局部变量而非全局变量。如果可以,递增局部变量而非成员属性。
15:成员函数的多少,不影响函数调用速度。
16:php解析静态文件要比动态文件快很多。
17:脚本的每一次调用都需要变异和链接,如果可以,使用缓存。
18:strlen($str) < 5 可以写成 isset($str{5})
相关文章推荐
- php与ffmpeg和mencoder处理视频
- PHP的pthreads扩展
- 将FTP目录映射为本地磁盘
- phpcms内容详情页只显示日期不显示时间的方法
- 关于后盾网yii框架的学习小结(9)--修改密码的方法,闪存
- PHPCMSV9父栏目调用子栏目的方法
- PHPCMS使用date函数实现自动更新页脚年月的方法
- php判断访问IP的方法
- phpsso忘记密码的解决办法
- PHP PSR 代码风格
- php配置xdebug调试
- 关于后盾网yii框架的学习小结(8)--自定义前台的验证
- php mysql 查询取得今天,昨天,过去N天,过去一个星期,一个月的记录
- 预定义异常 - PHP手册笔记
- intellij idea 高级用法之:集成JIRA、UML类图插件、集成SSH、集成FTP、Database管理
- 读《Yii 1.1应用程序开发实例》 笔记 1
- PHPStorm tips
- PHP隐藏控件作用
- php JSON数据格式化方法
- php yii 出现Undefined index: Cid