/*Operation symbols (PHP) Operation symbols
*
* According to the functions of operation symbols, they are divided into:
* 1. Arithmetic operators + - * / % ++ --
* 2. String operator. Connection operator
* 3. Assignment operator = += -= *= /= %= .=
* 4. Comparison operator > < >= <= == === != <> !==
* Comparison operator---Conditional operator---Relational operator
* Comparison There is only one result: 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 content is not the same, but the type is also required to be different
* 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
* @ is 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, and Don't use negative numbers
* %. Convert the numbers on both sides of the operator to integers and then divide them to find the remainder.
*/
//Use the % symbol to determine leap years
$year=2011;
if(($year%4==0 && %year%100!=0) || $year% 400=0)
{
echo "run nian";
}
else
{
echo "not run nian";
}
// ++ --Use 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; first use variable, then decrement by 1
--$a; //$ a=$a-1; Decrement it by 1 first, then use the variable
echo $a; //The result is 10
//++ -- The difference 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;
//String operator. Use of
$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.'米'.'
';
echo "$age=".$age; //$age=27
echo "My name is: {$name} mine Age is: {$age} My height is: {$height} meters
";//Use 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 "The username and password are correct";
}
if($username== "" || $password=="" || $email=="")
{
echo "Not one can be empty";
}
//bit operator
$a=20; //00010100
$b=30; // 00011110
/*
* 20 00010100
* 30 00011110 &
*--------- --------------------------
* 00010100
*
*/
$c=$a & $ b;
echo $c;
/*In addition, & | can also be used for logical operations
* The short circuit problem of && and ||:
* && When doing operations, 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 a positive number, 1 to represent a negative number
+7 00000111
-7 10000111
Complement code: If a number is positive, its complement code 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 = complement code + 1, remove the highest overflow bit
-7 Original code 10000111 Inverse code 11111000
+1
Complement code 11111001
Given the complement code of a negative number, convert it into a decimal number.
1. Negate each digit first
2. Convert it to a decimal number
3. Add a negative sign and then subtract 1.
Example: complement 11111010
Negative 00000101
4+1=5
-5-1=-6
Bitwise 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: Only 1 0 or 0 1 is 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 moved left and right to complement 0, negative numbers are shifted left to complement 0, and signed numbers are shifted to the right to complement 1. Sign complement 0
*/
//Application 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 '
';
?>