5个PHP性能优化的编程习惯,php性能优化实用技巧

作者: 关于计算机  发布:2019-09-26
  1. 不用随意就复制变量
        临时候为了使 PHP 代码尤其清新,一些 PHP 菜鸟(富含逐风本身)会把预约义好的变量复制到贰个名字更简便的变量中,其实那样做的结果是充实了一倍的内部存款和储蓄器消耗,只会使程序越来越慢。试想一下,在上面包车型大巴例证中,借使顾客恶意插入 512KB 字节的文字到文本输入框中,那样就会招致 1MB 的内部存款和储蓄器被消耗!

以下是四个优化工夫,熟悉领会后对于开垦依然很有帮带的。

 代码如下

1. 对字符串使用单引号 PHP 引擎允许使用单引号和双引号来封装字符串变量,可是那一个是有比比较大的歧异的!使用双引号的字符串告诉 PHP 引擎首先去读取字符串内容,查找在那之中的变量,并改为变量对应的值。一般的话字符串是绝非变量的,所以利用双引号会形成质量倒霉。最佳是利用字符串连接并非双引号字符串。

坏习惯:
$description = $_POST['description'];
echo $description;
能够写成:
echo $_POST['description'];

BAD:
$output = "This is a plain string";

  1. 对字符串使用单引号
        PHP 引擎允许行使单引号和双引号来封装字符串变量,可是那一个是有相当大的差别的!使用双引号的字符串告诉 PHP 引擎首先去读取字符串内容,查找在那之中的变量,并改为变量对应的值。一般的话字符串是从未变量的,所以使用双引号会导致品质倒霉。最佳是利用字符串连接实际不是双引号字符串。

GOOD:
$output = 'This is a plain string';

 代码如下

BAD:
$type = "mixed";
$output = "This is a $type string";

坏习惯:
$output = "This is a plain string";
能够写成:
$output = 'This is a plain string';
坏习惯:
$type = "mixed";
$output = "This is a $type string";
能够写成:
$type = 'mixed';
$output = 'This is a ' . $type .' string';

GOOD:
$type = 'mixed';
$output = 'This is a ' . $type .' string';

  1. 行使 echo 函数来输出字符串
        使用 echo() 函数来打印结果出了有更便于阅读之外,在下个例子中,你还足以见见有更加好的属性。
    坏习惯:

2. 决不随意就复制变量 有的时候为了使 PHP 代码更 加整洁,一些 PHP 菜鸟(包蕴本人)会把预订义好的变量复制到三个名字更轻巧的变量中,其实这么做的结果是充实了一倍的内部存款和储蓄器消耗,只会使程序更慢。试想一下,在底下的例证 中,假若客商恶意插入 512KB 字节的文字到文本输入框中,那样就能够促成 1MB 的内部存款和储蓄器被消耗!

 代码如下

BAD:
$description = $_POST['description'];
echo $description;

print($myVariable);
能够写成:
echo $myVariable;

GOOD:
echo $_POST['description'];

  1. 不用在 echo 中使用连接符
       相当多 PHP 程序员(有富含逐风本身)不知底在用 echo 输出七个变量的时候,其实能够行使逗号来分别的,而不用用字符串先把她们先连起来,如下边包车型的士首先个例证中,由于选用了延续符就能够有总体性难点,因为那样就能须要PHP 引擎首先把持有的变量连接起来,然后在出口,而在其次个例证中,PHP 引擎就能够依照循序输出他们。

3. 运用 echo 函数来输出字符串 行使 echo() 函数来打字与印刷结果出了有更便于阅读之外,在下个例子中,你还足以看来有越来越好的性质。

 代码如下

BAD:
print($myVariable);

坏习惯:
echo 'Hello, my name is' . $firstName . $lastName . ' and I live in ' . $city;
可以写成:
echo 'Hello, my name is' , $firstName , $lastName , ' and I live in ' , $city;

GOOD:
echo $myVariable;

  1. 使用 switch/case 代替 if/else
        对于唯有单个变量的论断,使用 switch/case 语句实际不是 if/else 语句,会有更加好的性质,况且代码越发轻巧阅读和保卫安全。
    坏习惯:

4. 不要在 echo 中使用连接符 广大 PHP 技术员(有富含自己)不知情在用 恶臭 输出四个变量的时候,其实可以行使逗号来分别的,而不必用字符串先把她们先连起来,如下边包车型客车首先个例证中,由于应用了连年符就能够有总体性难题,因为这么就能须求 PHP 引擎首先把装有的变量连接起来,然后在输出,而在其次个例证中,PHP 引擎就能依据循序输出他们。

 代码如下

BAD:
echo 'Hello, my name is' . $firstName . $lastName . ' and I live in ' . $city;

if($_POST['action'] == 'add') {
  addUser();
} elseif ($_POST['action'] == 'delete') {
  deleteUser();
} elseif ($_POST['action'] == 'edit') {
  editUser();
} else {
  defaultAction();
}
能够写成:
switch($_POST['action']) {
case 'add':
  addUser();
  break;
case 'delete':
   deleteUser();
  break;
case 'edit':
   editUser();
   break;
default:
   defaultAction();
   break;
}

GOOD:
echo 'Hello, my name is' , $firstName , $lastName , ' and I live in ' , $city;

5. 使用 switch/case 代替 if/else 对此独有单个变量的剖断,使用 switch/case 语句并非 if/else 语句,会有更加好的性能,而且代码越发便于阅读和保险。

BAD:
if($_POST['action'] == 'add') {
addUser();
} elseif ($_POST['action'] == 'delete') {
deleteUser();
} elseif ($_POST['action'] == 'edit') {
editUser();
} else {
defaultAction();
}

GOOD:
switch($_POST['action']) {
case 'add':
addUser();
break;
case 'delete':
deleteUser();
break;
case 'edit':
editUser();
break;
default:
defaultAction();
break;
}

本文由金沙澳门官网送注册58发布于关于计算机,转载请注明出处:5个PHP性能优化的编程习惯,php性能优化实用技巧

关键词: