Operator Precedence
- You Can force precedence using parentheses otherwise they are evaluated in this order:
- xor - exclusive or-either a or b is true but not both.
AND is not the same like &&
for example:
<?php $a && $b || $c; ?>
is not the same like
<?php $a AND $b || $c; ?>
the first thing is
(a and b) or c
the second
a and (b or c)
because || has got a higher priority than and, but less than &&
for example:
<?php $a && $b || $c; ?>
is not the same like
<?php $a AND $b || $c; ?>
the first thing is
(a and b) or c
the second
a and (b or c)
because || has got a higher priority than and, but less than &&
using always [ && and || ] or [ AND and OR ] would be okay, but than you should at least respect the following:
<?php $a = $b && $c; ?>
<?php $a = $b AND $c; ?>
the first code will set $a to the result of the comparison $b with $c, both have to be true, while the second code line will set $a like $b and THAN - after that - compare the success of this with the value of $c
<?php $a = $b && $c; ?>
<?php $a = $b AND $c; ?>
the first code will set $a to the result of the comparison $b with $c, both have to be true, while the second code line will set $a like $b and THAN - after that - compare the success of this with the value of $c
Operator are used to perform operation.
Operator are mainly divided by three groups.
- Unary Operators that takes one values
- Binary Operators that takes two values
- Ternary operators that takes three values
Operator are mainly divided by three groups that are totally seventeen types.
1. Arithmetic Operator+ = Addition
- = Subtraction
* = Multiplication
/ = Division
% = Modulo
** = Exponentiation
2. Assignment Operator
= "equal to
3. Array Operator
+ = Union
== = Equality
=== = Identity
!= = Inequality
<> = Inequality
!== = Non-identity
4. Bitwise Operator
& = and
^ = xor
| = not
<< = shift left
>> = shift right
5. Comparison Operator
== = equal
=== = identical
!= = not equal
!== = not identical
<> = not equal
< = less than
<= less than or equal
> = greater than
>= = greater than or equal
<=> = spaceship operator
6.Execution Operator
`` = backticks
7.Error Control Operator
@ = at sign
8.Incrementing/Decrementing Operator
++$a = PreIncrement
$a++ = PostIncrement
--$a = PreDecrement
$a-- = Postdecrement
9. Logical Operator
&& = And
|| = Or
! = Not
and = And
xor = Xor
or = Or
10. String Operator
. = concatenation operator
.= concatenating assignment operator
11. Type Operator
instanceof = instanceof
12.Ternary or Conditional operator
?: = Ternary operator
13. Null Coalescing Operator
??" = null coalescing
14. Clone new Operator
clone new = clone new
15. yield from Operator
yield from = yield from
16. yield Operator
yield = yield
17. print Operator
print = print