Home >Backend Development >PHP Tutorial >Detailed explanation of commonly used operators and operation symbols in PHP_PHP Tutorial

Detailed explanation of commonly used operators and operation symbols in PHP_PHP Tutorial

WBOY
WBOYOriginal
2016-07-13 10:55:051063browse

/*Operation symbols (PHP) operation symbols
*
* According to the operation symbol function, it is divided into:
* 1. Arithmetic operators + - * / % ++ --
* 2. String operators. Connection operators
* 3. Assignment operator = += -= *= /= %= .=
* 4. Comparison operators > < >= <= == === != <> !==
* Comparison operators---conditional operators---relational operators
* There is only one result after comparison: boolean true false
* === When comparing, not only the content is required to be the same, but also the type is required to be the same
* !== When comparing, the contents are not the same, and the types are also required
* 5. Logical operators && or and || or or ! or not
* Logical operators can only operate on bool type values ​​and return bool type values ​​
* 6. Bitwise operators & | ^ ~ << >> >>>
* 7. Other operators ? : `` @ => -> :: & $
* `` Used to execute the operating system kernel
* @ Used to block error messages
* It is recommended to use "()" to change the priority of expressions
*
* % has two purposes: integer division operation; control range, do not use decimals or negative numbers
* % Convert the numbers on both sides of the operator to integers and then divide them to find the remainder.
*/

//Use % symbol to determine leap year

$year=2011;
if(($year%4==0 && %year%100!=0) || $year%400=0)
{
echo "run nian";
}
else
{
echo " not run nian";
}


// ++ --Usage of symbols
$a=10;
$a++; //$a=$a+1; Use variables first, then increment by 1
++$a; //$a=$a+1; First increment by 1, then use variable
$a--; //$a=$a-1; Use the variable first, then decrement it by 1
--$a; //$a=$a-1; Decrement it by 1 first, then use the variable
echo $a; //The result is 10

//++ -- Differences in operations

$a=10;
$b=$a++;//b=10,a=11
$c=--$b;//c=9,b=9
$d=$c++ + ++$c; //d=20,c=11
$e=$d-- - --$d; //d=18,e=2
echo $d;



//Usage of string operator .
$name="tom";
$age=27;
$height=1.75;
echo "My name is: {$name} My age is: {$age} My height is: {$height} meters
";
echo 'My name is: '.$name.' My age is: '.$age.' My height is: '.$height.'m'.'
';
echo "$age=".$age; //$age=27

echo "My name is: {$name} My age is: {$age} My height is: {$height} meters
";//Usage of assignment operator

$a=10;
$a+=10; //$a=$a+10;
$a-=10; //$a=$a-10;
$a*=10; //...
$a/=10; //...
$a%=10; //$a=$a%10;
$a.="abc";//$a=$a."abc";
echo $a;
$str='

';
$str.='';
$str.='';
$str.='';
$str.='
';
$str.='
';
echo $str;//Output a table

//Comparison operator
var_dump(15>6);//return bool(true)
$a=15;
if(15==$a)
{
echo "a=15";
}
else
{
echo "a!=15";
}

//Use of logical operators

var_dump(true && true);//true
var_dump(true && false);//false
var_dump(true || false);//true
var_dump(!true);//false
var_dump(!false);//true
//Determine username and password
$username="admin";
$password="123456";
$email="290080604@qq.com";
if($username=="admin" && $password="123456")
{
echo "Username and password are correct";
}
if($username=="" || $password=="" || $email=="")
{
echo "None of them can be empty";
}

//bit operator
$a=20; //00010100
$b=30; // 00011110
/*
* 20 00010100
* 30 00011110 &
*----------------------------------
* 00010100
*
*/
$c=$a & $b;
echo $c;


/*Additional, & | can also be used for logical operations
* Short circuit problem of && and ||:
* When && is performing an operation, if the previous number is false, then whether the following number is true, the entire expression is false, so the following operands will not be executed;
* ||During operation, if the previous number is true, then whether the following number is false, the entire expression is true, so the following operands will not be executed;
* However, when & or | are operated, both sides will be executed
*/
$a=10;
if($a>5 || $a++<100){}
echo $a;//output 10
$b=10;
if($b>5 | $b++<100){}
echo $b;//output 11


/*
The concept of bit: A bit is composed of 8 binary numbers (for example, 00000000),
A byte consists of 8 bits, so there are 32 binary numbers.


Original code: The highest bit uses 0 to represent positive numbers and 1 to represent negative numbers

+7 00000111
-7 10000111


Negative code: If a number is positive, its complement is the same as the original code;
If a number is negative, the sign bit is 1, and the remaining bits are the inversion of the original code;
+7 00000111
-7 11111000

+0 00000000
-0 11111111

Complement code: If a number is positive, its complement and inverse code are the same as the original code
If a number is negative, its complement = one's complement + 1, and the highest overflow bit is removed
       
-7 Original code 10000111 Reverse code 11111000
                                                     Complement code 11111001
                                                                         Given the complement of a negative number, convert it to decimal.
1. Let me disprove everyone first
2. Convert it to decimal number
3. Add the negative sign and subtract 1.

Example: complement code 11111010

Negation 00000101

              4+1=5
-5-1=-6
 
Bit operators:
& Bitwise AND |Bitwise OR ^Bitwise XOR ~Bitwise negation

Example: Bitwise AND 01101101

                 &00110111

                  00100101
Conclusion: Only 1 1 is 1.
Bitwise OR 01101101
|00110111
                 01111111
Conclusion: Only 0 0 is 0.
​​Bitwise XOR 01101101
                ^00110111
                 01011010
Conclusion: It is 1 when there are only 1 0 or 0 1. (It can also be understood as 1 (true) in different states)
               Bitwise negation ~00110111
11001000
Conclusion: Change 0 to 1 and 1 to 0


Shift operator:
Left shift:<< Signed right shift:>> Unsigned right shift:>>>

Example: Number x x<<2 x>>2 x>>>2
17 00010001 01000100 00000100 00000100
-17 11101111 10111100 11111011 00111011
Conclusion: Positive numbers are padded with 0 when moving left and right, negative numbers are padded with 0 when moved left, signed right is padded with 1, and unsigned is padded with 0


*/

//Use of other operators
$a=10;
$b=$a>5 ? $a : 5;//Ternary operator, if true $b=$a otherwise $b=5
echo $b;

//Use `` to execute operating system shell commands
$str=`ipconfig /all`;
echo '

';<br>
echo $str;<br>
echo '
';


?>

This section lists the various operators used in PHP:

Arithmetic operators

Operator Description Example Results
+ Addition x=2
运算符 说明 例子 结果
+ Addition x=2
x+2
4
- Subtraction x=2
5-x
3
* Multiplication x=4
x*5
20
/ Division 15/5
5/2
3
2.5
% Modulus (division remainder) 5%2
10%8
10%2
1
2
0
++ Increment x=5
x++
x=6
-- Decrement x=5
x--
x=4
x+2
4
- Subtraction x=2 5-x 3
* Multiplication x=4

x*5

20
/ Division 15/5 5/2 3 2.5
% Modulus (division remainder) 5%2 10%8

10%2

1
运算符 说明 例子
= x=y x=y
+= x+=y x=x+y
-= x-=y x=x-y
*= x*=y x=x*y
/= x/=y x=x/y
.= x.=y x=x.y
%= x%=y x=x%y
2 0
++ Increment x=5

x++

x=6
-- Decrement x=5 x-- x=4

Assignment operator

运算符 说明 例子
== is equal to 5==8 returns false
!= is not equal 5!=8 returns true
> is greater than 5>8 returns false
< is less than 5<8 returns true
>= is greater than or equal to 5>=8 returns false
<= is less than or equal to 5<=8 returns true
<🎜> <🎜> <🎜> <🎜> <🎜><🎜>Comparison operators<🎜><🎜> <🎜> <🎜>

逻辑运算符

http://www.bkjia.com/PHPjc/632287.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/632287.htmlTechArticle
?php教程 /*运算符号(PHP)操作符号 * *按运算符号功能分为: *一、算术运算符 + - * / % ++ -- *二、字符串运算符 . 连接运算符 *三、赋值运算...
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
运算符 说明 例子
&& and x=6
y=3
运算符 说明 例子
&& and x=6
y=3

(x < 10 && y > 1) returns true

|| or x=6
y=3

(x==5 || y==5) returns false

! not x=6
y=3

!(x==y) returns true

(x < 10 && y > 1) returns true
|| or x=6
y=3 (x==5 || y==5) returns false

! not x=6
y=3
!(x==y) returns true