A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Yt雨天 初级黑马   /  2017-4-12 19:15  /  911 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

运算符
算数运算符
基础
   :+ - * /  %
1针对数字进行的运算
2两边有不是数字的数据就会自动转换为数字
3其中取余运算 (取模运算)% 他只针对“整数”进行运算 如果不是 会自动截取为整数
自增自减运算符
常规:对数字进行自加1或自减1
字符串:只能自增 且自增的效果就是
“下一个字符”其只能针对字幕或数字进行自加
布尔值递增减无效
mull 递减无效 递增结果为1
自增自减的区别
独立的加加运算中 前自增和后自增效果一样
在有加加运算的其他与剧中 前加加和后加加会有区别影响其他语句的执行结果 前加加时现对自加变量加1 然后做其他运算 后加加时先做其他运算 然后对自己加变量加1
<?php
$a1=1;
$a2=1;
echo $a1++;
echo "<p>"
echo $a2++;
?>

比较运算符
符号 > >=  <  <=  ==  != === !==
一般比较:是针对数字进行比较
= =和= = = 比较前者通常叫做模糊i相等的比较
,后者叫做精确相等的比较(只有数据的类型和数据的值/内容 都相等 才是全等)必须能够找到的后侧的“类型比较表”
不要对浮点数直接进行大小比较

常见不同类型(标量类型)数据之间的比较规律
如果比较的数据中 有布尔值 转为布尔值比较 布尔值比较只有一个规则:true>false
否则 如果有数字值 有数字转为数字比较:这就是常规比骄傲
如果 两边都是“纯数字字符串” 转为数字比较
否则就按字符串比较
对两边的字符串 一个一个从前往后取出字符并进行比较 谁“先大”结果就是他大
true=成立
false=不成立

基本运算规则
逻辑与规则:
   true&& true==>>true
   treue&& false ==>>false
   false &&true  ==>> false
   false && false ==>> false
总结 只要2个都是true 加过才是trur
     只要有一个时false 结果就是false
逻辑与或则:
   true  ||  true==>>true
   true  ||  false ==>>true
   false ||  true  ==>> true
   false ||  false ==>> false
总结 只要2个都是false 加过才是false
     只要有一个时true 结果就是true
非逻辑规则
!true==>> false
!false ==>> true

逻辑运算符的“短路现象 ”
如果一个语句中 通过与运算需要进行多项判断 而且不同的判断的具有冥想不同“复杂程度”则我们应该简单的判断放在前面 这是我们就可以利用短路现象以达到提高效率的目的
逻辑或短路:
如果一个语句中 通过 或 运算需要进行多项判断 而且不同的判断的具有冥想不同“复杂程度”则我们应该简单的判断放在前面 这是我们就可以利用短路现象以达到提高效率的目的
字符串运算符
1, 符号只有一个 .   也衍生出另一个 .=
2, 含义 就是将这个符号两面的字符串链接起来
3, 如果两边不是字符串 就会自动转换为字符串 然后链接起来
“ab”.3 ==>>"ab3";
“12”.3==》》“123”
12 . 3 ==》》 “123”
赋值运算符:
一个基本赋值运算符: =
形式    $变量名  = 值:
  理解: 将右边的值(不管做了多少运算),赋值给左边的变量
若干个衍生的赋值运算符
+= 加等  形式:$变量名 +=  值:
理解   相当于  $变量名 = $ 变量名+值
-= 减等  形式:$变量名 +=  值:
理解   相当于  $变量名 = $ 变量名+值
*=  /= %= .= 其都可ui认为是杉树形式的一种简化版
条件(
三目  三元)运算符
只有一个 形式:
数值1 ?  shuzhi 2:  数据值3
含义
  对数值1 进行判断  如果"真" 则该运算符的运算结果就是数值2 否则就是数据值3
他就是这样一个流程 逻辑判断 语句的简写形式:
if(数据值1){
$变量名 = 数据值2
}
else{
$变量名= 数据值3:
}
注意  如果数据值1 不是布尔值 ,也会转换为布尔值:
$score=66
$valuation=$>60?"及格";”不及格“;

位运算符
基础规定
1位是什么 就是2进制数字的每一个“位”一个整数数字 有(由)32个位构成!
2位运算符 是仅仅针对整数进行的运算符
3位运算符由如下几个
& 按位与;
|:按位或;
~:按位非;按位取反;
^:按位异或
4位算符的基本语法规则:
按位与基本规则
1& 1 ==>> 1
1&0 ==>>0
0& 1 ==>>0
0& 0 ==>0
按位或基本规则
1|1 ==>> 1
1|0 ==>>1
0| 1 ==>>1
0| 0 ==>0
按位非基本规则:
~1 ==>>0
~0==》0
按位非基本规则
1^1==>0
1^0==>1
0^1==>1
0>0==>0
整数的按位与运算 &
形式
$n1 & $n2; // n1 ,n2 是任整数;
含义
  将该2个整数的二进制数字形式 (注意,都是32 位)的每一个对应围上的数字进行基本按位与运算之后的结果
他们的运算结果 其仍然是 一个普通的数字
只用8个位演示
实例
$r1=10 &20;
10d的二进制 0 0 0 0 1 0 1 0
20的二进制  0 0 0 1 0 1 0 0
&运算结果: 0 0 0 0 0 0 0 0

代码:
$v1=10&20;
echo "<br / >v1=$v1";
整数的按位或运算:
形式
$n1 | $n2; // n1 ,n2 是任整数;
含义
  将该2个整数的二进制数字形式 (注意,都是32 位)的每一个对应围上的数字进行基本按位或运算之后的结果
他们的运算结果 其仍然是 一个普通的数字
只用8个位演示
实例
$r1=10 &20;
10d的二进制 0 0 0 0 1 0 1 0
20的二进制  0 0 0 1 0 1 0 0
|运算结果: 0 0 0 1 1 1 1 0
该结果数据值大小位1*2的四次方 + 1*2三次方+1*2二次方+1*2的1次方+0=
整数的按位左移运算
形式
$n1 << $m
含义 将十进制数字n1 的二进制数字形式(也就是32位的)的每一位上的数字都叫一次性往左边移动m位
并将右边空出来的位置补0 左边冒出的不管 操作后的结果
$r1=10<<2;
10d的二进制 0 0 0 0 1 0 1 0
左移两位后  0 0 1 0 1 0 0 0
则结 果:   0 0 0 1 1 1 1 0
可见结果位2的五次方+2的三次方=32+8=40
代码:
$ v1 =10<< 2 ;
echo "<br / >v1 = $v1";




0 个回复

您需要登录后才可以回帖 登录 | 加入黑马