Home  >  Article  >  Backend Development  >  Complete knowledge about php operators

Complete knowledge about php operators

高洛峰
高洛峰Original
2016-11-30 13:19:491501browse

Things that seem simple are still very interesting in practical applications

Arithmetic operators
Operator name results
$a + $b Add the sum of $a and $b
$a - $b Subtract the sum of $a Difference of $b
$a * $b Multiplication Product of $a and $b
$a / $b Division Quotient of $a divided by $b
$a % $b Modulo Remainder of $a divided by $b
Increment/Decrease Operator
Operator Name Result
++$a Add the value of $a before adding one, and then perform the operation
$a++ Add the value of $a after the operation first, add one after it
--$a  Subtract before The value of $a is reduced by one, and then the operation is performed
$a-- The value of $a is reduced by the operation first, and then is reduced by one
Example:
Copy code The code is as follows:
echo $a=5+” 5th"; //Output: 10
echo 10%3; //Output: 1
echo 10+ $a++; //Output: 20
echo 5- --$a; //Output: -5
?>

Comparison Operator
Operator Name Result
$a == $b equals TRUE if $a equals $b
$a === $b congruent TRUE if $a equals $b and their types are also Same
$a != $b is not equal TRUE, if $a is not equal to $b
$a <> $b is not equal TRUE, if $a is not equal to $b
$a !== $b is not congruent TRUE if $a is not equal to $b, or they are of different types
$a < $b is less than TRUE if $a is strictly less than $b
$a > $b is greater than TRUE if $a is strictly $b
$ a <= $b is less than or equal to TRUE, if $a is less than or equal to $b
$a >= $b is greater than or equal to TRUE, if $a is greater than or equal to $b
Another conditional operator is "? :" ( or ternary) operator.
Example:
Copy code The code is as follows:
var_dump(0=="a"); //Output: bool(true)
var_dump(0=="00"); //Output: bool( true)
var_dump(0==="00"); //Output: bool(false)
var_dump(0<>"abc"); //Output: bool(false)
var_dump(0!==" 01"); //Output: bool(true)
$a=10;
$b=20;
$str=$a>$b? "true":"false";
echo $str; //Output : false
?>

Logical operator
Operator name result
$a and $b logical AND TRUE, if both $a and $b are TRUE.
$a or $b logical OR TRUE, if either $a or $b is TRUE.
$a xor $b XOR TRUE if $a and $b are different at the same time
! $a logically not TRUE if $a is not TRUE.
$a && $b logical AND TRUE, if both $a and $b are TRUE.
$a || $b logical OR TRUE if either $a or $b is TRUE.
Among them, and and &&, or and || are two ways of writing the same logical operator.
Logical AND and Logical OR are both short-circuit operators. When encountering the following logical expression, the PHP interpreter will not evaluate the expression on the right:
Copy code The code is as follows:
$a=10;
if(false && (++$a)) ;
echo $a; //Output: 10
$b=10;
if(true or (++$b));
echo $b; //Output: 10
?>

bit operator
Bitwise operators allow setting specified bits in an integer. If both left and right arguments are strings, the bitwise operators operate on the ASCII values ​​of the characters.
Expression Name Result
$a & $b bitwise AND will set the bits in $a and $b that are both 1 to 1.
$a | $b bitwise OR will set the bit in $a or $b that is 1 to 1.
$a ^ $b bitwise XOR will set different bits in $a and $b to 1.
~ Bitwise negation of $a sets the bits in $a that are 0 to 1, and vice versa.
$a << $b left shift Move the bits in $a to the left $b times (each move means "multiply by 2").
$a >> $b right shift Move the bits in $a to the right $b times (each move means "divide by 2").
Other operators
String operators
There are two string operators. The first is the concatenation operator ("."), which returns the concatenated string of its left and right arguments. The second is the concatenation assignment operator (".="), which appends the right argument to the left argument.
Error suppression operator
In the most common database connection and file creation operations or when exceptions such as division by 0 occur, the @ symbol can be used to suppress the output of function error information to the browser $a=@(5/0)
External command Execution
Use `` to run external system commands. Note that it is not a single quote, but the key under ESC.
Copy the code. The code is as follows:
$out=`dir c:`;
print_r($out);
?>//It is not recommended to use

Example:
Copy code The code is as follows:
$a="hello";
$a.=" world! "; //Equivalent to: $a=$ a." world!";
echo $a; //Output: hello world!
$m = 3;
$m += 5; //Equivalent to: $m=$m+5;
echo $m; //Output: 8
$c = ($b = 4) + 5;
echo $c; //Output :9
?>

Operator precedence
The following table lists the precedence of operators from low to high.
Combined with direction operators
left,
left or
left xor
left and
right print
right = += -= *= /= .= %= &= |= ^= ~= <<= > >=
left? :
left||
left&&
Combined direction operator
left|
left^
left&
None== != === !==
None< <= > > ;=
left<< >>
left+ - .
left* / %
right! ~ ++ -- (int) (float) (string) (array) (object) @
right[
Nothing new

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn