PHP - 操作符与控制结构

第3章 操作符与控制结构

 

学习要点:

1.字符串插入

2.操作符

3.控制结构

 

 

 

一.字符串插入

 

为了给开发人员处理字符串值提供最大的灵活性,PHP为字面插入和内容插入提供了一种方法。

双引号提供了最大的灵活性,原因是变量和转移序列都会得到相应的解析。

<?php

$userName = "吴祁";

echo "His name is $userName";

echo "<br />";

//中文会出现一些问题

echo "他的名字叫$userName,他19岁了,已经长大成人了!";  

echo "<br />";

//可以采用字符串连接的方式解决

echo "他的名字叫".$userName.",他19岁了,已经长大成人了!"

//转义字符可以得到解析

echo "虽然他的QQ号有很多女生,\n但一个都不属于他";

?>

 

部分常用的转义字符

转义序列

描述

\n

换行符

\r

回车

\t

水平制表图

\\

反斜杠

\$

美元符

\"

双引号

 

 

单引号会按照声明的原样解释,解析字符串时,变量和转义序列都不会进行解析。

<?php 

echo '吴祁的变量名为:$userName,转义字符\n在单引号中无效'

?>

 

二.操作符

 

操作符是用来对数组和变量进行某种操作运算的符号。

 

算术操作符

操作符

名称

示例

+

$a+$b

-

$a-$b

*

$a*$b

/

$a/$b

%

取余

$a%$b

 

 

复合赋值操作符

操作符

使用方法

等价于

+=

$a+=$b

$a=$a+$b

-=

$a-=$b

$a=$a-$b

*=

$a*=$b

$a=$a*$b

/=

$a/=$b

$a=$a/$b

%=

$a%=$b

$a=$a%$b

.=

$a.=$b

$a=$a.$b

 

 

前置递增递减和后置递增递减运算符:

$a=++$b;

$a=$b++;

$a=--$b;

$a=$b--;

 

比较运算符

操作符

名称

使用方法

= =

等于

$a= =$b

= = =

恒等

$a= = =$b

!=

不等

$a!=$b

!= =

不恒等

$a!= =$b

<>

不等

$a<>$b

<

小于

$a<$b

>

大于

$a>$b

<=

小于等于

$a<=$b

>=

大于等于

$a>=$b

 

注:恒等表示只有两边操作数相等并且数据类型也相当才返回true;

例如:0= ="0" 这个返回为true ,因为操作数相等

      0= = ="0"  这个返回为false,因为数据类型不同

 

 

逻辑运算符

操作符

使用方法

使用方法

说明

!

!$b

如果$bfalse,则返回true;否则相反

&&

$a&&$b

如果$a$b都是true,则结果为true;否则为false

||

$a||$b

如果$a$b中有一个为true或者都为true时,其结果为true;否则为false

and

$a and $b

&&相同,但其优先级较低

or

$a or $b

||相同,但其优先级较低

 

操作符"and""or"&&||的优先级要低。

 

三元操作符

Condition ? value if true : value if false

示例:($grade>=50 ? "Passed" : "Failed")

 

错误抑制操作符:

$a=@(57/0);

除数不能为0,会出错,所以加上@避免出现错误警告。

 

数组操作符

操作符

使用方法

使用方法

说明

+

联合

!$b

返回一个包含了$a$b中所有元素的数组

= =

等价

$a&&$b

如果$a$b具有相同的元素,返回true

= = =

恒等

$a||$b

如果$a$b具有相同的元素以及相同的顺序,返回true

!=

非等价

$a and $b

如果$a$b不是等价的,返回true

<>

非等价

 

如果$a$b不是等价的,返回true

!= =

非恒等

$a or $b

如果$a$b不是恒等的,返回true

 

操作符的优先级和结合性:

一般地说,操作符具有一组优先级,也就是执行他们的顺序。

操作符还具有结合性,也就是同一优先级的操作符的执行顺序。这种顺序通常有从左到右,从右到左或者不相关。

下面给出操作符优先级的表。最上面的操作符优先级最低,按着表的由上而下的顺序,优先级递增。

 

操作符优先级

结合性

操作符

Or

Xor

And

Print

= += -= *= /= .= %= &= |= ^= ~= <<= >>=

:

||

&&

|

^

&

不相关

= =  != =  = = =  != =

不相关

<<= >>=

<< >>

+ - .

* / %

! ~ ++ -- (int)(double)(string)(array)(object) @

[]

不相关

New

不相关

()

 

为了避免优先级混乱,可以使用括号避开优先级。

 

三.控制结构

 

如果我们希望有效地相应用户的输入,代码就需要具有判断能力。能够让程序进行判断的结构称为条件。

 

if条件判断语句

if (条件判断){

//......

}

 

if (条件判断){

//....

}

else {

//....

}

 

if (条件判断) {

//...

}

elseif {

//...

}

elseif {

//....

}

else {

//....

}

 

switch语句

switch (变量) {

case "1":

//...

break;

case "2":

//...

break;

case "N":

//...

break;

default:

//....

break;

}

 

while循环

while (条件) {

//....

}

 

for循环

for (初始值;条件;计数器) {

//....

}

除了for循环外,PHP还提供了foreach循环,它专门用于数组的使用。我们在数组中详细介绍它。

 

do while 循环

do {

//...

} while(条件);

 

如果希望停止一段代码的执行,根据所需要达到的效果不同,可以有3中方法实现。

第一种:break;  退出循环; 第二种是exit ;退出程序  第三种是continue;退出当前循环

if (条件

{

break; //continue

}

 

posted on 2015-11-11 16:13  ultrastrong  阅读(315)  评论(0编辑  收藏  举报