PHP程序设计基础(微课版)(第2版)课件 8.PHP运算符_第1页
PHP程序设计基础(微课版)(第2版)课件 8.PHP运算符_第2页
PHP程序设计基础(微课版)(第2版)课件 8.PHP运算符_第3页
PHP程序设计基础(微课版)(第2版)课件 8.PHP运算符_第4页
PHP程序设计基础(微课版)(第2版)课件 8.PHP运算符_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2.6运算符陈学平016运算符6运算符一个复杂的PHP程序往往是由大量的表达式所构成的,而运算符则是表达式的核心,也称作操作符。只有掌握了PHP表达式和运算符的用法,才能够更好地使用PHP语言进行开发设计。PHP中常用的运算符包括算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符、字符串运算符和数组运算符,下面将分别介绍。6.1算术运算符算术运算符号,就是用来处理四则运算的符号,这是最简单,也最常用的符号,尤其是数字的处理,几乎都会使用到算术运算符,其中取模就是取余数的意思。PHP提供的算术运算符及其作用如表2-11所示。表2-11算术运算符实例36使用算术运算符实例代码如下:<?php$a=8;$b=3;echo$a+$b."<br>";echo$a-$b."<br>";echo$a*$b."<br>";echo$a/$b."<br>";echo$a%$b;?>在浏览器中输出为:115242.6666666666726.2递增/递减运算符递增/递减运算符是可以对操作系统(可以是数字或字符)进行递增、递减操作的一种运算符。PHP提供的递增/递减运算符及其作用如表2-12所示。表2-12递增/递减运算符及其作用实例37使用递增/递减运算符实例代码如下:<?php$a=8;$b=8;$c=3;$d=3;echo$a++."<br>";echo++$b."<br>";echo$c--."<br>";echo--$d;?>6.3赋值运算符基本的赋值运算符是“=”。它并不是常规的“等于”号。它实际上意味着把右边表达式的值赋给左边的变量。如$a=3,并不是$a等于3,而是将整数赋给$a。然而在PHP中不仅仅只有这一种赋值运算符,PHP提供的赋值运算符及其用法如表2-13所示。表2-13赋值运算符实例38使用赋值运算符实例代码如下:<?php$a=6;$b=8;$c=7;$d=5;$e=4;6.3赋值运算符$f="大家";echo($a+=3)."<br>";echo($b-=3)."<br>";echo($c*=3)."<br>";echo($d/=3)."<br>";echo($e%=3)."<br>";echo($f.="好!");?>6.4比较运算符比较运算符也称条件运算符或关系运算符,用于比较两个数据的值并返回一个布尔类型的结果。PHP提供的比较运算符及其用法如表2-14所示。表2-14比较运算符实例39使用比较运算符实例代码如下:<?php$a=5;$b=3;$c="5";$d=5.0;6.4比较运算符echovar_dump($a==$b)."<br>";echovar_dump($c==$d)."<br>";echovar_dump($a===$c)."<br>";echovar_dump($a!=$b)."<br>";echovar_dump($a!=$c)."<br>";echovar_dump($a!==$d)."<br>";echovar_dump($a<$b)."<br>";echovar_dump($a>$b)."<br>";echovar_dump($a<=$b)."<br>";echovar_dump($a>=$b);?>6.5逻辑运算符逻辑运算符用于处理逻辑运算操作,只能操作布尔型值。PHP提供的逻辑运算符及其用法如表2-15所示。表2-15逻辑运算符实例40使用逻辑运算符实例代码如下:<?php$a=true;$b=true;$c=false;echovar_dump($a&&$b)."<br>";6.5逻辑运算符echovar_dump($a&&$b)."<br>";echovar_dump($a&&$c)."<br>";echovar_dump($a||$b)."<br>";echovar_dump($a||$c)."<br>";echovar_dump($axor$b)."<br>";echovar_dump($axor$c)."<br>";echovar_dump(!$a)."<br>";echovar_dump(!$c);?>6.6位运算符位运算符主要应用于整型数据的运算过程。当表达式包含位运算符时,运算时会先将各个整型运算数转换为相应的二进制格式,然后再进行位运算。PHP提供的位运算符及其用法如表2-16所示。表2-16位运算符号实例41使用位运算符实例代码如下:<?php$a=7;//二进制为00000111$b=2;//二进制为000000106.6位运算符echo($a&$b)."<br>";//与操作后为00000010,转十进制为2echo($a|$b)."<br>";//或操作后为00000111,转十进制为7echo($a^$b)."<br>";//异或操作后为00000101,转十进制为5

echo(~$a)."<br>";//非操作后为11111000,转十进制为-8echo($a<<$b)."<br>";//向左位移2个单位后为00011100,转十进制为28echo($a>>$b)."<br>";//向右位移2个单位后为00000001,转十进制为1?>6.6位运算符其他都好理解,对于非操作后为11111000,转十进制为什么-8,做一下解释。计算机中一般32位字长,为了方便,如果按8位说明(8的十进制为1000,其32位00000000000000000000000000001000,其8位为00001000)。当指定一个数是无符号类型时,那么其最高位的1或0,和其它位一样,用来表示该数的大小。当指定一个数是有符号类型时,最高数称为“符号位”。为1时,表示该数为负值,为0时表示为正值。负数如何转换成二进制?负数转为二进制的步骤为:第一步,求出其正数的二进制,如-8的正数(8)的二进制为00001000。第二步,求出其反码,即1变0,0变1,00001000的反码是11110111。6.6位运算符第三步,得出其补码,即反码加1,要记住逢2进1,11110111的补码为11111000,因此-8的二进制为11111000。虽然是8位,而实际上是32位,前24位全都是1,上面讲的8的二进制00001000前24位都是0。为什么11111000是-8而不是248?将248转为二进制是11111000,但其前24位都为0,而-8的二进制前24位都为1。如果单从8位来讲,248的二进制是无符号类型,它没有负数,取值范围为0~255(00000000~11111111)共个数,而-8的二进制是有符号类型,取值范围为-128~127(负数10000000~11111111,00000000,正数00000001~01111111)共256个数。6.6位运算符32位操作系统中使用位运算符编程的时候,右移不要超过32位,左移结果不要超过32位,否则会发生数据溢出。01如果在开发过程中一定要使用位运算符,则建议开发人员保证所有参与位运算的数据都为整型数据,否则运算结果可能产生错误。02位运算符也可用于包含字符串的表达式,但是这种情况很少见。036.7字符串运算符字符串运算符也称连接运算符,用于处理字符串的相关操作。在PHP中提供了两个字符串运算符。第一个是连接运算符(“.”),它返回其左右参数连接后的字符串。第二个是连接赋值运算符(“.=”),它将右边参数附加到左边的参数后。实例42使用字符串运算符实例代码如下:<?php$a="今天";$b=$a."是星期一,";echo$b."<br>";$c="明天";$c.="是星期二。";echo($c);?>6.8数组运算符6.8数组运算符<?php$a=array("1"=>3,"2"=>5);$b=array("color"=>"red","shape"=>"round");$c=array("1"=>"3","2"=>"5");echovar_dump($a+$b)."<br>";echovar_dump($a==$c)."<br>";echovar_dump($a===$c)."<br>";echovar_dump($a!=$b)."<br>";echovar_dump($a!==$c);?>6.9错误抑制运算符PHP表达式产生错误而如果不想将错误信息显示在页面上时,可使用错误抑制运算符。当表达式的前面被加上“@”这个运算符以后,该表达式可能产生的任何错误信息都会被忽略。实例44使用错误抑制运算符实例代码如下:<?php$a=5;$b=0;echo($a/$b);?>6.9错误抑制运算符在浏览器中输出为:Warning:DivisionbyzeroinC:\phpStudy\WWW\2\44.PHPonline4上面的C:\phpStudy\WWW\是网站的目录路径。浏览器出现了错误提示,如果将在($a/$b)前面加上“@”这个符号,则再次运行这个程序的时候,就不会得到任何错误信息。<?php$a=5;$b=0;echo@($a/$b);6.9错误抑制运算符?>在程序的开发调试阶段,不应该使用错误抑制运算符,以便能够快速地发现错误信息。而在程序的发布阶段,可加上错误抑制运算符,以防止程序出现不友好的错误信息。6.10类型运算符实例45应用类型运算符实例代码如下:<?phpclassA{} //定义一个类A$a=newA(); //实例化一个类A的对象avar_dump($ainstanceofA); //使用类型运算符判断a是否为类A的实例?>6.11执行运算符执行运算符使用“`”(键盘数字1左边的按键)符号。使用了这个运算符以后,该运算符内的字符串将会被当做DOS命令行来处理。实例46应用执行运算符实例代码如下:<?php$a=`dirc:\\AppServ`;echo$a;?>在浏览器中输出为:驱动器C中的卷是BOOTCAMP卷的序列号是3424-B308c:\的目录6.12三元运算符三元运算符的功能与“if....else”流程语句一致,它在一行中书写,代码精练、执行效率高。在PHP程序中恰当地使用三元运算符能够让脚本更为简洁、高效。代码的格式如下:表达式1?表达式2:表达式3如果表达式1的值为true则计算表达式2,否则计算表达式3。实例47应用判断运算符实例代码如下:<?php$a=90;$b=$a>80?'成功':'失败';echo$b;?>6.12三元运算符在浏览器中输出为:成功应该注意的是:在使用三元运算符时,建议使用print语句替换echo语句,经测试,PHP4环境下,在使用三元运算时若用echo语句打印

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论