原文:PHP: The Right Way - The Basics 译者:youngsterxyf 比较操作符 比较操作符往往是PHP的一个被忽视的方面,这会导致很多意想不到的结果。其中的一个问题源于严格比较(布尔值为整数的比较)。 ?php$a = 5; // 5为一个整数var_dump($a == 5); // 比较
原文:PHP: The Right Way - The Basics
译者:youngsterxyf
比较操作符往往是PHP的一个被忽视的方面,这会导致很多意想不到的结果。其中的一个问题源于严格比较(布尔值为整数的比较)。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
在函数或类中使用'if/else'之时,有个常见的误解---'else'必须一起使用以声明潜在的结果。然而,如果,结果是定义返回值,则'else'是不需要的,因为'return'会结束函数,使得'else'变得毫无意义。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
Switch语句是一种避免输入无穷尽的if和elseif的绝妙方式,但需要注意几点:
在函数内,使用'return'可以减少'break'的使用,因为'return'能够结束函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
Switch语句
使用命名空间之时,你可能发现内置函数被你所写的函数覆盖了。推荐在全局函数的函数名之前添加一个反斜杠来修正这个问题。
1 2 3 4 5 6 7 8 9 10 11 12 |
|
在变量原本的命名空间内,当拼接使用了新行,则应该缩进
1 2 3 4 5 6 7 8 |
|
字符串操作符
字符串类型在PHP社区内是个不变的特性,但希望本节内容能够解释清楚字符串类型之间的区别以及各自的好处/用法。
单引号
单引号是创建字符串最简单的方式,并且通常执行速度也是最快的,因为PHP不会解析这种字符串(不解析其中是否存在变量),所以单引号最适用于:
将变量写为纯文本值(Writing of a variable into plain text)
1 2 3 4 5 6 7 |
|
单引号
双引号
双引号是字符串处理的瑞士军刀,但执行速度比较慢,因为字符串要经过解析。双引号最适用于:
1 2 3 4 5 6 |
|
使用双引号创建的字符串中包含变量时,经常出现变量名与后面另一个字符相接触的情况,从而导致PHP不解析该变量,因为它被"伪装"起来了。为了解决这个问题,可以使用一对大括号把变量包围起来。
1 2 3 4 5 6 7 8 9 10 11 |
|
Nowdoc语法
PHP 5.3引入了Nowdoc语法,其行为与单引号相同,除了她适用于多行字符串的使用,而不需要拼接。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
|
Heredoc语法
Heredoc语法的行为与双引号相同,除了它适用于多行字符串的使用,而不需要拼接。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
三元操作符是一种压缩代码的好方式,但经常被滥用。当需要多层或嵌套使用三元操作符时,建议一行代码仅使用一次三元操作符以提高代码可读性。
1 2 3 4 5 6 7 |
|
使用三元操作符'返回'一个值需使用正确的语法。
1 2 3 4 5 6 |
|
有时,程序员会试图通过将预定义变量声明为一个不同的名字使得代码更加"干净"。事实上,这样会让脚本的内存消耗加倍。如下例子,我们假设一个示例文本字符串包含1MB的数据,通过拷贝这个变量,脚本执行时就会增加到2MB。
1 2 3 4 5 |
|
原文地址:PHP之道---PHP基础知识(译), 感谢原作者分享。