PHP中的运算符

下面是从API上截图的一张PHP运算符优先级表格,从上到下,优先级从高到低

下面是从API上截图的一张PHP运算符优先级表格,从上到下,优先级从高到低


算术运算符

a、取反运算符:-,对单个变量进行取反运算
b、加法运算符:+,无左右之分
c、加法运算符:-,有减数和被减数区别
d、乘法运算符:*,无左右之分
e、除法运算符:/,有除数和被除数之分,除被除数和除数都是整数并且整除返回整数情况之外,其他返回的都是浮点数
f、取模运算符:%,除后取余


位运算符

位运算符包含
a、按位与:&,除了1&1=1之外,其他都是0
b、按位或:|,除0|0=0之外,其他都是1
d、按位非:~,0设置为1,1设置为0
e、左移:<<,每一次移动都表示“乘以 2” f、 右移:>>,每一次移动都表示“除以 2”


比较运算符

比较运算符包含
a、等于:==
b、全等:===,两个变量相等并且它们的类型也相同
c、不等:!=、<>
d、非全等:!==
e、小于:<
f、 大于:>
g、小等于:<=
h、大等于:>=


逻辑运算符

逻辑运算符
a、逻辑与:&&、and。除了两个变量都为true时结果为true,其他都为false
b、逻辑或:||、or。除了两个变量都为false时结果为false,其他都为true
c、逻辑异或:xor。两个变量同时为true或者同时为false时结果为false,一真一假时结果为true
d、逻辑非:!。对单个变量起作用,真时为假,假时为真


数组运算符

a、联合运算符:+,运算符把右边的数组元素(除去键值与左边的数组元素相同的那些元素)附加到左边的数组后面,但是重复的键值不会被覆盖
b、等于:==,具有相同的键值对
c、全等:===,具有相同的键值对,并且顺序和类型都相同
d、不等:<>、!=
e、不全等:!==


其他运算符

a、赋值运算符:=
b、错误控制运算符:@,放在表达式的前面,忽略该表达式可能产生的任何错误信息
c、递增/递减运算符:++、–,两个运算符都分别分为前置和后置,和其他语言的作用是一样的
d、字符串运算符:.,连接两个字符串


<?php  
$num=4;  
var_dump($num);     //int 4  
/**************算术运算符*********************/  
$num2=-$num;  
var_dump($num2);    //int -4  
var_dump($num+$num2);   //int 0  
var_dump($num-$num2);   //int 8  
var_dump($num*$num2);   //int -16  
var_dump($num/$num2);   //int -1  
var_dump(7%6);          //int 1  

/**************位运算符*********************/  
var_dump(7&1);          //int 1  
var_dump(7|0);          //int 7  
var_dump(7^7);          //int 0  
var_dump(7^0);          //int 7  
var_dump(~ $num);       //int -5  
var_dump($num<<2);      //int 16  
var_dump($num>>1);      //int 2  
var_dump($num>>3);      //int 0  
/**************比较运算符*********************/  
$val1=1;  
$val2=1.0;  
if($val1==$val2){  
    echo "equal<br />";   //正常输出  
}  
if($val1===$val2){  
    echo "see?<br />";    //没有输出  
}  
/**************逻辑运算符*********************/  

function func1(){  
    echo "func1 executed<br />";  
    return true;  
}  

function func2(){  
    echo "func2 executed<br />";  
    return false;  
}  

//func2被短路了,并没有执行  
if(func1()||func2()){  
    echo "come in 1<br />";     //输出了  
}  
//func1被短路了,并没有执行  
if(func2()&&func1()){  
    echo "come in 2<br />";     //没有进来  
}  

/**************数组运算符*********************/  
$arr1=array(1,2,3);  
/* 
  array (size=3) 
  0 => int 1 
  1 => int 2 
  2 => int 3 
 */  
var_dump($arr1);  

$arr2=array(3,4,5,6,7);  
/* 
 array (size=5) 
  0 => int 3 
  1 => int 4 
  2 => int 5 
  3 => int 6 
  4 => int 7 
 */  
var_dump($arr2);  
$temp=$arr1+$arr2;  
/* 
 array (size=5) 
  0 => int 1 
  1 => int 2 
  2 => int 3 
  3 => int 6 
  4 => int 7 
 */  
var_dump($temp);  
$arr3=array(  
    1=>1,  
    2=>2,  
    3=>3,  
    4=>4);  
$arr4=array(  
    2=>2,  
    1=>1,  
    4=>4,  
    3=>3  
);  

if($arr3==$arr4){  
    echo "tow arrays are equal<br />";  //相等,正常输出  
}  

if($arr3===$arr4){  
    echo "tow arrays are all equal";    //不全等,不输出  
}  

/**************其他运算符*********************/  
echo "hello "."world<br />";        //字符串连接符,输出hello world  
class Test{}  
$test=new Test;  
if($test instanceof Test){  
    echo '$test is the instance of Test';   //$test是Test类的实例,正常输出  
}  
?>  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值