首页 > 代码库 > 【2014】【辛星】【php】【秋季】【5】其他的变量运算符

【2014】【辛星】【php】【秋季】【5】其他的变量运算符


**************字符串运算符******************

1.字符串运算符是一个. 也就是一个点,这个点把左边的字符串和右边的字符串拼接为一个字符串。

2.比如$a = "辛星永"; $b = "爱小倩"; 那么$a.$b就是"辛星永爱小倩";

3.我们写一个xin14.php练练手:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><?php
$xing  = "辛星永爱";
$qian  = "小倩";
$msg   =  $xing.$qian;
echo   $msg;</span>

4.那么我们会发现:

5.其实这个点不仅仅可以连接两个变量,还可以是两个字符串的数据,即$xing."小倩"和"辛星永爱"."小倩"也是正确的。

6.其实呢,这个点号还是饱受谩骂的,因为涉及到面向对象之后,绝大多数语言都使用点号作为调用成员方法的一个运算符,但是PHP由于把它作为字符串连接符了,因此只能采用箭头,即->来表示。

 

*****************赋值运算符****************

1.其实我们已经学过了,赋值运算符就是一个等号,比如$a = 3;就是把3赋值给$a。

2.其实呢赋值号还有升级版,分别是+=、-=、*=、/=、.=这几个。

3.什么意思呢,$a  += $b ;其实就相当于$a = $a  +  $b; 其实左边就相当于右边的一个简写形式。

4.同理,$a -= $b;就是$a  =  $a - $b; 其他的运算符也都很好理解吧。

5.我们来试一试,我们写一个xin15.php,看看效果:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><?php
$money = 100;//现有资本
$money += 2000;//突然暴发
echo $money;</span>

6.然后我们看一下效果:

********************比较运算符*****************

1.比较运算符还是蛮有意思的,这个运算符会返回一个布尔类型的结果,也就是它会返回true或者false。

2.比较运算符主要分为>表示大于,<表示小于,>=表示大于等于,<=表示小于等于这几个都很好理解的。

3.由于=号用于赋值,我们用==表示等于,我们用===也就是三个等号表示全等于,也就是不仅值相等,而且类型也必须相同才返回true。

4.对于不等的情况,我们用!=表示,这里的!表示“不是”的意思也就是不等。

5.我们的<>也表示不等,因为它是大于号和小于号的结合。

6.还有一个符号,是!==,它表示比较运算符的两边如果值不相等,返回true,或者类型不相等,也会返回true,总之,它返回false就是值相等且类型相同,否则就返回true。

7.我们来个实例来演示一下吧,我们新建一个xin16.php,写入如下内容:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><?php
$i = 4;//整数的4
$f = 4.0;//浮点数的4.0

//判断$i和$f是否相等
$flag = $i == $f;
var_dump($flag);

//判断$i和$f是否全等
$flag = $i === $f;
var_dump($flag);</span>

8.我们看到的结果如下:


 

 

***************递增递减运算符******************

1.我们使用++表示递增运算符,也就是该变量的数值增加1,--表示递减运算符,表示这个变量的值减1,这个运算符是C++首次引入的,也正是因为这两个运算符,所以C++被称为C++。

2.这个运算符可以在变量前面使用,也可以再变量后面使用,就是$a ++;和++$a;都是合法的,而且它们的含义也是相同的,都是让该变量的取值加1。

3.可能很多学C++出来的总是喜欢研究这个符号的使用情景并对此津津乐道,其实呢,我不建议这么做,感觉意义不是很大,咱们只要知道它的用途就可以了。

4.看一个例子xin17.php,我们的代码如下:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><?php
$a = 3;
$a ++;
++$a;
echo $a;</span>

5.我们进行了两次自增,因此它的结果肯定是5,效果如下:


*********************逻辑运算符*****************

1.逻辑运算符就是进行逻辑运算的,它的的操作对象通常是布尔类型。

2.and是逻辑与运算,也就是两边的布尔值都是true的时候,结果才为true,它和&&效果是一样的。

3.or是逻辑或运算,也就是两边的布尔值有一个是true,运算结果就为true,它和||效果是一样的。

4.xor是逻辑异或运算,也就是两边的值不一样的时候结果才为true,否则为false。

5.not是逻辑非运算符,直接取反,原来为true,则之后为false,原来为false,则之后为true。

6.有人会说and与&&是否完全相同,其实也不是,关键问题在于优先级不同,而对于优先级这种东西,我不建议大家搞的太复杂,因此我们一般也就用不到去研究了。

7.我们写一个xin18.php看一下效果:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><?php
$flag1  = 3==4;
$flag2  = 4==4;
$flag3  = $flag1 and $flag2;
var_dump($flag3);</span>

8.我们发现效果如下:

 

 

****************三目运算符*****************

1.为什么叫三目运算符呢?它也叫做三元运算符,就是因为它有三个操作数。

2.它的格式通常是这样的a?b:c,它首先计算条件a,如果a为true,则该运算符的结果就是表达式b的值,如果a为false,则该运算符的结果就是表达式c的值。

3.我们看下面代码:

<span style="font-family:KaiTi_GB2312;font-size:18px;"><?php
$a = 5;
$b = 7;
$big = $a > $b ? $a :$b;
echo $big;</span>

4.其实读者应该知道我想干什么了,没错,我就是想把$a和$b中较大的那个找出来。

5.因此我们的运行效果如下:

 

*********************总结***************************

1.这一小节我们学习了较多的运算符,包括赋值运算符、比较运算符等等。

2.后面有学习了递增递减运算符、字符串运算符、逻辑运算符。

3.最后还有一个经典的三目运算符。

 

 

*********************跟踪训练**********************

1.任务一:把“学习PHP轻松入门”和“在实战中学习”这两个字符串连接起来并输出。

2.任务二:使用三目运算符求出6和9之中的最小值。

3.这里我就不给demo了,希望读者亲自完成喽。

 

【2014】【辛星】【php】【秋季】【5】其他的变量运算符