php学习day5--运算符的基本知识
昨天我们学习了关于常量和数据类型的相关知识,因为前期的知识都是想对比较简单的,所以有些小的细节要学会注意,时刻要提醒自己要细心。
今天主要学习的是运算符和流程控制,内容相对比较简单,但也要学会注意细节。
一、php中常见的运算符
在php中的运算符基本上是跟js差不多的,其运行原理也是一样。
1.算数运算符
在平常的运算中,我们经常使用算数运算符,可以对数据进行简单的数值运算,这些运算符叫做算数运算符。
算数运算符:+,-,*,/,%,++,--
其中以上这些运算有一定的可以对数据类型进行隐形转换:
$i="1"+"1"; // 2 $i="1"+1; // 2 $i="1a"+1; // 2 $i="1abd"+1; // 2 $i="abs"+1; // 1 //剩余其他几个的也是有同样的功能
运算符中值得注意的是++和--两种:
++i;如果单行存在,则就是加+1,如果在其他语句中出现参加运算,则先自加1再运算;
i++;如果单行存在,则就是加+1,如果在其他语句中出现参加运算,则先运算再自加1;
--i; 同++i的道理相同;
i--; 同i++的道理相同;
2.字符串运算符
常见的字符串运算符是用来对字符串进行操作的最长用到的是:
.和.=
其主要的作用就是来连接字符串用的。
3.赋值运算符
常见的赋值运算符有以下几种:
=,+=,-=,*=,/=,%=
这类运算符主要的作用就是给变量赋值或者进行运算时用到。因为在js中学过,这里就不深入记载。
4.比较运算符
常见的比较运算符是以下几种
>,<,>=,<=,==,!=,===,!==
主要是判断运算符两边的大小关系,返回的是布尔值,主要用在判断语句中。
其中值得注意的是运算符两边如果有布尔值的话,则会优先转化为布尔值进行比较,如果没有布尔值,则以数值型,最后比较是字符串。
另外浮点数最好不要参与比较运算。
true>1; // => true>ture; 结果 false true>"a"; // => true>ture; 结果 false true>""; // => true>false; 结果 true "2">1; // => 2>1; 结果 true "3ab">1; // => 3>1; 结果 true //其他的比较运算符也是同样的道理
5.逻辑运算符
逻辑运算符有三个:
&& || !
主要是进行逻辑运算的。
$a && $b $a与$b同时为true本式才为真。另$a为真,才会运行$b.
$a || $b $a与$b至少有一个为真本式才为真。另$a为假,才会运行$b.
!$a $a为真,则整个式子为假。
另外注意的是:在条件判断中&&、||运算符前面放简单运算后面放复杂的运算,可以提高性能。
6.三元运算符
又称条件运算符:
其原理是与if语句相同的,条件为真,则执行结果一,条件为假,则执行结果二。可以代替条件语句使用。
7.位运算符
常用的位运算符有以下几种
&:按位与
|:按位或
~:按位取反
^:按位异或
$n2<<m:按位左移
位运算符在php中最常用的一种方式是来管理一组事物的开关状态。
1.通过一个变量,可以获知任何一个数据的当前状态。
2.通过一个变量,可以将一个一个数据的状态“开启”或”关闭“。
8.数组运算符
下面两张图就会明白
9.错误控制运算符
错误控制运算符就只有一个:
@
通常是用在一个地方的:$link = @mysql_connect(),防止浏览器报错而流露信息。
二、运算符的优先级
关于运算符的优先级的问题
相对而言,今天的知识是比较简单的,细心掌握好细节就OK了。