php operators and expressions
1. Classification of operators
1. Classification by operands
1.!true // Unary operator
2.$a+$b // Binary operator
3.true ? 1:0 // Ternary operator
2. Classification by operation function
(1) Arithmetic operators
1.+,-,x,/,%(remainder)
(2) String operators
1.. // For example: $a = 'abc'.'efg';
(3) Assignment operator
1.= // Simple assignment
2.+=, -=, X=, /=, %=, .= // Compound assignment
3.++($a++,++$a), --($a--,--$a) // Increasingly decreasing
4.&($a = 1;$b = &a) // Reference assignment
(4) Comparison Operator
1.==, ===(constantly equal to), !=, !===, <>(not equal to), <, >, <=, >=
(5) Logical operators
1.// The priority inside the brackets is higher than the priority outside the brackets
2.&&(and), ||(or), !(not), xor(exclusive or),
(6) bit operators
1.&(bitwise AND), |(bitwise OR), ~(bitwise NOT), ^(bitwise XOR), <<(left shift), >>(right shift)
2. Arithmetic operators
% remainder, common usage: 1) Integer division operation 2) Control the value range
Example: Determine whether it is a leap year (one leap year every four years, no leap year in one hundred years, and another leap year in four hundred years)
// %会把两边的数转成整型后在整除 // %两边不能用小数或负数 if ((($year%4 == 0) && ($year%100 != 0)) || $year%400 == 0) echo "闰年"; else echo "平年";
3. Assignment operator
//先自身加10,然后赋值给自己,等价于 $a=$a+10 $a += 10; //前置递增递减,先递增递减再赋值 ++$a //先赋值,再递增递减 $a++ //实例 $a = 10; $b = $a++ $c = --$b 结果:a=11 b=9 c=9
4. Logical operators
xor XOR: The same is false (two true or two false = false), different is true (one true and one false = false)
Tips: Pay attention to the difference with or, the two truths of or = true
Logical operator short circuit
1. && //If one is false, no operation will be performed on the following, it must be false
2. || //If one is true, no operation will be performed later, and it must be true
fopen ("test.php","r") or die("failure");
Tips: There is no short-circuit feature for operator & |
5. Bitwise operators
Bit operation: Convert integer to 32-bit binary, and convert string to ANSCA code for processing
Thanks for reading, I hope it can help you, thank you for your support of this site!