搜索
首页php教程php手册PHP代码性能优化的技巧讲解

PHP代码性能优化的技巧讲解

Jun 06, 2016 pm 07:47 PM
php代码优化性能技巧讲解语言

PHP语言 虽然功能强大,但是它并不是没有缺点的。同其他语言一样,它在实际应用编写中也需要不断的更新修改已编代码,直到满意为止。我们接下来就与大家一起分享PHP代码性能优化的一些技巧。 PHP代码性能优化1. 不要随便就复制变量 有时候为了使 PHP 代码更

PHP语言虽然功能强大,但是它并不是没有缺点的。同其他语言一样,它在实际应用编写中也需要不断的更新修改已编代码,直到满意为止。我们接下来就与大家一起分享PHP代码性能优化的一些技巧。

 

PHP代码性能优化1. 不要随便就复制变量

 

有时候为了使 PHP 代码更加整洁,一些 PHP 新手(包括我)会把预定义好的变量复制到一个名字更简短的变量中,其实这样做的结果是增加了一倍的内存消耗,只会使程序更加慢。试想一下,在下面的例子中,如果用户恶意插入 512KB 字节的文字到文本输入框中,这样就会导致 1MB 的内存被消耗!

 

  1. BAD:  
  2. $description $_POST['description'];  
  3. echo $description;  
  4. GOOD:  
  5. echo $_POST['description'];  

 

 

引用

PHP代码性能优化2. 对字符串使用单引号

PHP 引擎允许使用单引号和双引号来封装字符串变量,但是这个是有很大的差别的!使用双引号的字符串告诉 PHP 引擎首先去读取字符串内容,查找其中的变量,并改为变量对应的值。一般来说字符串是没有变量的,所以使用双引号会导致性能不佳。最好是使用字符串连接而不是双引号字符串。

 

  1. BAD:  
  2. $output "This is plain string";  
  3. GOOD:  
  4. $output 'This is plain string';  
  5. BAD:  
  6. $type "mixed";  
  7. $output "This is $type string";  
  8. GOOD:  
  9. $type 'mixed';  
  10. $output 'This is ' $type .' string'; 

 

 

引用

PHP代码性能优化3. 使用 echo 函数来输出字符串

使用 echo() 函数来打印结果出了有更容易阅读之外,在下个例子中,你还可以看到有更好的性能。

 

  1. BAD:  
  2. print($myVariable);  
  3. GOOD:  
  4. echo $myVariable; 

 

 

引用

PHP代码性能优化4. 不要在 echo 中使用连接符

很多 PHP 程序员(有包括我)不知道在用恶臭输出多个变量的时候,其实可以使用逗号来分开的,而不必用字符串先把他们先连起来,如下面的第一个例子中,由于使用了连接符就会有性能问题,因为这样就会需要 PHP 引擎首先把所有的变量连接起来,然后在输出,而在第二个例子中,PHP 引擎就会按照循序输出他们。

 

  1. BAD:  
  2. echo 'Hello, my name is' $firstName $lastName and live in $city;  
  3. GOOD:  
  4. echo 'Hello, my name is' $firstName $lastName and live in $city; 

 

 

引用

PHP代码性能优化5. 使用 switch/case 代替 if/else

对于只有单个变量的判断,使用 switch/case 语句而不是 if/else 语句,会有更好的性能,并且代码更加容易阅读和维护。

 

  1. BAD:  
  2. if($_POST['action'] == 'add') {  
  3. addUser();  
  4. elseif ($_POST['action'] == 'delete') {  
  5. deleteUser();  
  6. elseif ($_POST['action'] == 'edit') {  
  7. editUser();  
  8. else {  
  9. defaultAction();  
  10. }  
  11. GOOD:  
  12. switch($_POST['action']) {  
  13. case 'add':  
  14. addUser();  
  15. break;  
  16. case 'delete':  
  17. deleteUser();  
  18. break;  
  19. case 'edit':  
  20. editUser();  
  21. break;  
  22. default:  
  23. defaultAction();  
  24. break;  
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器